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

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

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


From: Eulogia
Subject: Re: Plusieurs \score dans une fonction print-book-with-defaults
Date: Fri, 2 Dec 2022 01:06:12 +0100

Dès lors que l'on fait un \include en instruction directe ou appelée par la commande parser-include-string, les variables lilypond déclarées avant l'appel de l'include seront reconnues sans problème et peuvent être exploitées dans le fichier inclus, ainsi que les instructions bookname, etc. 

L'avantage de cette méthode est que la fonction scheme se contente de choisir les bons fichiers ily en fonction des paramètres donnés, et que les fichiers ily restent du pur lilypond, qui est plus lisible et pas exposés aux problèmes de mélange avec le scheme. 

Bonne nuit, 

ben




Le 2 déc. 2022 à 00:31, Simon Martineau <martineau.simon@gmail.com> a écrit :

Merci beaucoup Ben, je ne connaissais pas ly:parser-include-string. C’est une bonne idée je pense, mais ma fonction inclue une variable pour le formatage du book, et j’ai l’impression qu’avec cette méthode cela ne peut pas fonctionner.

Pour l’instant le code le plus efficace que j’ai trouvé est le suivant :

\version "2.22.2"

xBook = 
#(define-scheme-function 
   (key)
   (string?)
#{
  \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
    }
  }
#})

\book {
  \bookOutputSuffix "Ut"
  \xBook "Ut"
  \score {
    \relative c' {
      \mark "Theme"
      \repeat unfold 15 { a1 b c d \break }
    }
  }
  \score {
    \relative c' {
      \mark "Coda"
      a b c d 
    }
  }
}

J’aurais bien aimé avoir une seule commande pour \bookOutputSuffix et \xBook, d’où l’idée du code dans mon premier mail, mais pour l’instant je n’ai pas assez de connaissances…

Merci à tous pour votre aide !

Simon




reply via email to

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