|
From: | david427 |
Subject: | Re: Hampe personnalisée |
Date: | Fri, 11 Feb 2022 08:23:12 +0100 (CET) |
De : Remy CLAVERIE <remy.claverie@orange.fr>
À : david427@mailo.com;
Jean Abou Samra <jean@abou-samra.fr>;
lilypond-user-fr@gnu.org
Sujet : Re: Hampe personnalisée
Date : 11/02/2022 06:16:41 Europe/Paris
Heureux de t'avoir appris qq chose, Jean.
Je ne pensais pas que cela soit possible...
Bonne journée,
Rémy
envoyé : 10 février 2022 à 22:18
de : Jean Abou Samra <jean@abou-samra.fr>
à : david427@mailo.com, remy.claverie@orange.fr, lilypond-user-fr@gnu.org
objet : Re: Hampe personnalisée
Le 10/02/2022 à 18:11, david427@mailo.com a écrit :Merci à vous, Jean et Rémy !
Je n'ai pas bien compris comment utiliser \override Beam .
auto-knee-gap = #1
J'ai essayé la solution de Jean, qui fonctionne
J'avais bien lu cette page de doc, mais je n'avais pas réussi à
l'adapter à mon code :(
Voici mon code modifié :
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\version "2.23.3"
\language "français"
global = { \key do \major \time 4/4}
hamp = { \change Staff = "right" \once \stemDown }
dehamp = { \change Staff = "left" \once \stemUp }
right = \relative do' { \global mi2. fa8. sol16 do2 }
leftOne = \relative do' { \global
\repeat unfold 3 { r8 sol \hamp do \dehamp sol } }
leftTwo = \relative do { \global
do2. }
\score {
\new PianoStaff \with { instrumentName = "Piano" }
<< \new Staff = "right" \right
\new Staff = "left" { \clef bass << \leftOne \\ \leftTwo >> }
>>
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
J'ai créé des variables pour ne pas trop noircir le code (je vais
devoir l'utiliser presque chaque mesure)
et à priori, le premier \once \stemUp du code de Jean n'est pas
nécessaire ici
(pour ceux qui se posent la question, hamp veut dire : "début de la
hampe bizarre" et dehamp : "défaire (finir) la hampe bizarre")
^^'
David
La solution de Rémy est maline et meilleure que la mienne, elle
vous évitera des \stemUp et \stemDown sur toutes les hampes même
si on peut effectivement les combiner avec les \change (tant
que ces commandes arrivent au même moment). La seule chose qui
l'empêche de marcher sur l'exemple, c'est le << \\ >>, qui force
les hampes à pointer vers le haut dans la première voix, sauf
à mettre \stemDown. Pour éviter ce désagrément, il faut utiliser
la construction << >> sans \\ et mettre \voiceTwo dans la deuxième
voix, mais pas de \voiceOne dans la première, ce qui dit
à LilyPond qu'elle peut faire comme bon lui semble pour la
direction des hampes. Donc :
\version "2.23.3"
\language "français"
global = { \key do \major \time 4/4 }
up = \change Staff = right
down = \change Staff = left
right = \relative do' { \global mi2. fa8. sol16 do2 }
leftOne = \relative do' {
\global
\override Beam.auto-knee-gap = 1
\repeat unfold 3 { r8 sol \up do \down sol }
}
leftTwo = \relative do {
\global
\voiceTwo
do2.
}
\score {
\new PianoStaff \with { instrumentName = "Piano" }
<< \new Staff = "right" \right
\new Staff = "left" { \clef bass << \leftOne \new Voice
\leftTwo >> }
>>
}
Merci Rémy, j'aurai appris quelque chose aujourd'hui !
Cordialement,
Jean
[Prev in Thread] | Current Thread | [Next in Thread] |