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

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

Fonction avec argument pour la valeur d'un silence


From: Bernard-B
Subject: Fonction avec argument pour la valeur d'un silence
Date: Thu, 16 May 2019 07:20:38 -0700 (MST)

Bonjour à tous, En tant que chef de chœur, je suis souvent en train de graver des partitions pour mes choristes... Et je sais que je ne suis pas le seul !!! Bref ! Des cas comme ci-dessous, j'en ai des tonnes :
\version "2.19.80"
\language "italiano"

\score {
  \new ChoirStaff <<
    \new Staff <<
      \new Voice = "S" { \voiceOne \relative do'' { r4 fa mi re }}
      \new Voice = "A" { \voiceTwo \relative do'' { r4 re do si }}
    >>
    \new Staff <<
      \clef bass
      \new Voice = "T" { \voiceOne \relative do { r4 fa mi re }}
      \new Voice = "B" { \voiceTwo \relative do { r4 re do si }}    
    >>
  >>
}
Et pour éclaircir la partition, je fais :
\score {
  \new ChoirStaff <<
    \new Staff <<
      \new Voice = "S" { \voiceOne \relative do'' { \tweak #'Y-offset #0 r4 fa mi re }}
      \new Voice = "A" { \voiceTwo \relative do'' { s4 re do si }}
    >>
    \new Staff <<
      \clef bass
      \new Voice = "T" { \voiceOne \relative do { \tweak #'Y-offset #0 r4 fa mi re }}
      \new Voice = "B" { \voiceTwo \relative do { s4 re do si }}    
    >>
  >>
}
Pour gagner du temps, j'ai tenté d'écrire une fonction :
BBrest = 
#(define-music-function
     (parser location arg1)
     (number?)
   #{
        \tweak #'Y-offset #0 r#(arg1) }
   #})
Afin de factoriser un peu mon code source et pouvoir écrire :
\score {
  \new ChoirStaff <<
    \new Staff <<
      \new Voice = "S" { \voiceOne \relative do'' { \BBrest #4 fa mi re }}
      \new Voice = "A" { \voiceTwo \relative do'' { s4 re do si }}
    >>
    \new Staff <<
      \clef bass
      \new Voice = "T" { \voiceOne \relative do { \BBrest #4 fa mi re }}
      \new Voice = "B" { \voiceTwo \relative do { s4 re do si }}    
    >>
  >>
}
À la compile (sous frescobaldi, nobody's perfect), j'ai :
/tmp/frescobaldi-dgs6e0a8/tmp95fxsx8p/document.ly:9:28: Avertissement : _expression_ non musicale ignorée
     \tweak #'Y-offset #0 r
                           #arg1 }
/tmp/frescobaldi-dgs6e0a8/tmp95fxsx8p/document.ly:9:34: Erreur : syntax error, unexpected '}'
     \tweak #'Y-offset #0 r#arg1 
                                 }
/tmp/frescobaldi-dgs6e0a8/tmp95fxsx8p/document.ly:43:53: Erreur : erreur dans #{ ... #}
      \new Voice = "S" { \voiceOne \relative do'' { 
                                                    \BBrest #4 fa mi re }}
Je me doute bien que je programme comme un noob... mais si quelqu'un avait la gentillesse de me dire où est ma grosse bêtise, je sui en serais reconnaissant, et pourquoi pas une p'tite bière !!! Un grand merci à tous ! Bernard.

Sent from the LilyPond French Users mailing list archive at Nabble.com.

reply via email to

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