Subject: DS al coda & coda

From: Lasconic <[email-masked]>
Date: Thu, 27 Nov 2008 09:52:40 +0100

Bonjour,
J'essaye vainement de mettre en place une partition. Je l'ai réduite à sa
plus simple expression.
Une partition de deux lignes, une seule portée. 4 mesures par ligne.
La dernière mesure de la première ligne, la mesure 4, je souhaiterai avoir à
la fin une indication "D.C. al coda" bien aligné (a la fin de la mesure).
Pour se faire j'utilise :
 \once \override Score.RehearsalMark #'break-visibility =
#begin-of-line-invisible
  \once \override Score.RehearsalMark #'self-alignment-X = #right
  \mark "D.C. al coda"| \break

La première mesure de la deuxième ligne, la mesure 5, je souhaiterai avoir
un signe de coda, aligné en début de mesure. Et donc pour se faire j'utilise
\once \override Score.RehearsalMark #'break-visibility =
#end-of-line-invisible
\once \override Score.RehearsalMark #'self-alignment-X = #left
\mark \markup { \musicglyph #"scripts.coda" }

Malheureusement, lilypond n'a pas l'air heureux lorsque l'on met deux \mark
à la suite, sans note entre les deux...
Quelqu'un aurait une idée de contournement ? Ci joint l'exemple. (en version
2.11.37, mais testé avec 2.11.64 ...)

Merci !

Lasconic

---

From: "Gilles THIBAULT" <[email-masked]>
Date: Thu, 27 Nov 2008 15:06:28 +0100

J'essaye vainement de mettre en place une partition. Je l'ai réduite à sa plus simple expression.
  Une partition de deux lignes, une seule portée. 4 mesures par ligne.
  La dernière mesure de la première ligne, la mesure 4, je souhaiterai avoir à la fin une indication "D.C. al coda" bien aligné (a la fin de la mesure). Pour se faire j'utilise : 
   \once \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible
    \once \override Score.RehearsalMark #'self-alignment-X = #right
    \mark "D.C. al coda"| \break

  La première mesure de la deuxième ligne, la mesure 5, je souhaiterai avoir un signe de coda, aligné en début de mesure. Et donc pour se faire j'utilise
  \once \override Score.RehearsalMark #'break-visibility = #end-of-line-invisible 
  \once \override Score.RehearsalMark #'self-alignment-X = #left 
  \mark \markup { \musicglyph #"scripts.coda" } 

  Malheureusement, lilypond n'a pas l'air heureux lorsque l'on met deux \mark à la suite, sans note entre les deux...
  Quelqu'un aurait une idée de contournement ? Ci joint l'exemple. (en version 2.11.37, mais testé avec 2.11.64 ...)

Tous les exemples du LSR ( http://lsr.dsi.unimi.it/LSR/Search?q=mark&s=20&m=10 ), utilise un ^\markup à la place d'un mark pour se tirer de situations similaires.
Mais ce n'st pas vraiment satisfaisant :
        - Si on fait des réglages globaux (de font par exemple) particulier  pour les \mark, ça ne sera pas pris en compte
        - Si on inclu cette partition dans un conducteur, ce \markup ne sera pas collecté comme les autres \mark pour la "Staff" du haut.
En pis-aller , il y a la solution de mettre le 2ème \mark décalé d'une petite croche et de mettre l'alignement à droite pour réctifier ce décalage

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
myMelody = {
  c'2 c'4 c'4 |
  c'4 c' c' c' |
  c'4 c' c' c' |
  c'8 c' c' c' c' c' c' c' 
  \once \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible
  \once \override Score.RehearsalMark #'self-alignment-X = #right
  \mark "D.C. al coda"| \break

  <<{ s8 
  \once \override Score.RehearsalMark #'break-visibility = #end-of-line-invisible 
  \once \override Score.RehearsalMark #'self-alignment-X = #right
  %% Si c'est pas suffisant, on peut mettre 2, 3 ou 4 à la place de RIGHT
  \mark \markup { \musicglyph #"scripts.coda" }
  s8 s2.  }
  {c'2 c'4 c'4} |>> 
  
  c'4 c' c' c' |
  c'4 c' c' c' |
  c'2 c' |
}

\new Staff \myMelody

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Bon c'est un peu lourd, mais ça marche aussi dans un conducteur
(remplacer 
\new Staff \myMelody
par
<<
\new Staff {c'1 c' c' c' c' c' c' c'}
\new Staff \myMelody

Gilles