lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Plusieurs \score dans une fonction print-book-with-defaults


From: Simon Martineau
Subject: Plusieurs \score dans une fonction print-book-with-defaults
Date: Thu, 1 Dec 2022 11:38:50 +0100

Bonjour à tous,

Il y a quelques semaines Jean m’a aidé sur le forum pour une fonction scheme (https://lists.gnu.org/archive/html/lilypond-user-fr/2022-11/msg00093.html).

J’ai passé pas mal de temps à chercher une solution, mais je bloque pour une dernière chose : Je souhaiterai pouvoir inclure plusieurs blocks \score dans mon \book, mais je ne sais pas comment m’y prendre. Ci dessous un exemple minimal de code.

J’en profite pour vous demander si il existe des formations ou si quelqu’un donne des cours pour apprendre à utiliser le Scheme pour Lilypond : il y a pas mal de points que j’aimerais maitriser mieux sans spammer la liste de diffusion !

Merci beaucoup !

Simon

\version "2.22.2"

xBook =
#(define-void-function (key score)
   (string? ly:score?)
   (print-book-with-defaults
     #{
     \book {
       \bookOutputSuffix $key
       \paper {
         oddHeaderMarkup = \markup {
           \on-the-fly \first-page {
             \circle \pad-around #2 $key
           }
           \on-the-fly \not-part-first-page {
             \fromproperty #'header:title
             \concat { "[" $key "]"  }
             "- p." \fromproperty #'page:page-number-string
           }
         }
         evenHeaderMarkup = \markup {
           \fromproperty #'header:title
           \concat { "[" $key "]"  }
           "- p." \fromproperty #'page:page-number-string
         }
       }
       $score
     }
     #}))

\header {
  title = "TEST"
}

% FONCTIONNE PARFAITEMENT :

\xBook "Ut" \score {
  \relative c' {
    a b c d
    \pageBreak
    a b c d
  }
}

% CE QUE JE SOUHAITERAIS
% NE FONCTIONNE PAS :

\xBook "Ut" {
  \score {
    \relative c' {
      a b c d
      \pageBreak
      a b c d
    }
  }
  \score {
    \relative c' {
      d c b a
    }
  }
}

reply via email to

[Prev in Thread] Current Thread [Next in Thread]