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

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

Aide pour une fonction Scheme


From: Simon Martineau
Subject: Aide pour une fonction Scheme
Date: Thu, 17 Nov 2022 00:50:07 +0100

Bonjour à tous,

C’est la première fonction scheme que j’écris, et j’ai besoin d’un peu d’aide :

Dans la plupart de mes partitions, j’utilise une ou plusieurs des fonctions ci dessous pour afficher les numéros de pages, et un marqueur en cas de partition transposée :

\book {
  \paper { 
    oddHeaderMarkup = \markup {
      \on-the-fly #not-part-first-page { 
      \fontsize #-5.5 \fromproperty #'header:title
      "- p." \fromproperty #'page:page-number-string 
      }
    }
    evenHeaderMarkup = \markup { 
      \fontsize #-5.5 \fromproperty #'header:title
      "- p." \fromproperty #'page:page-number-string 
    }
  }
  \musique
}

\book {
  \bookOutputSuffix "Bb"
  \paper { 
    oddHeaderMarkup = \markup {
      \on-the-fly #first-page { \circle \pad-around #2 "Bb" }
      \on-the-fly #not-part-first-page { 
      \fontsize #-5.5 \fromproperty #'header:title
      "[Bb] - p." \fromproperty #'page:page-number-string 
      }
    }
    evenHeaderMarkup = \markup { 
      \fontsize #-5.5 \fromproperty #'header:title
      "[Bb] - p." \fromproperty #'page:page-number-string 
    }
  }
  \transpose c d \musique
}

\book {
  \bookOutputSuffix "Eb"
  \paper { 
    oddHeaderMarkup = \markup {
      \on-the-fly #first-page { \circle \pad-around #2 "Eb" }
      \on-the-fly #not-part-first-page { 
      \fontsize #-5.5 \fromproperty #'header:title
      "[Eb] - p." \fromproperty #'page:page-number-string 
      }
    }
    evenHeaderMarkup = \markup { 
      \fontsize #-5.5 \fromproperty #'header:title
      "[Eb] - p." \fromproperty #'page:page-number-string 
    }
  }
  \transpose c a \musique
}

Mon objectif est de réduire au maximum ces trois fonctions :

\myBook \musique % pour les partitions en ut
\myBook "Bb" { \transpose c d \musique } % pour les partitions en Bb
\myBook "Eb" { \transpose c a \musique } % pour les partitions en Eb

Après quelques recherches, je suis arrivé à ce code qui est vraiment incomplet car je bloque sur les points suivants :

myBook =
#(define-void-function
  (key music)
  (string? ly:music?)
  (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 {
          "[" $key "]" - p.
        }
      }
      evenHeaderMarkup = \markup {
        "[" $key "]" - p. 
      }
    }
      $music
    } 
    #}))

Merci beaucoup !!

Simon


reply via email to

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