Subject: \partcombine ou \voiceThree

From: "Germain G. Ivanoff-Trinadtzaty" <[email-masked]>
Date: Mon, 26 May 2008 19:30:58 +0200

Bonjour,
Je souhaite obtenir différents layouts à partir de la même musique ; c'est-à-dire réutiliser les même variables contenant la définition des notes voix par voix, pour deux présentations différentes :
1 :   SA / TB
2 :   SAT / B   (en fait :   S1,S2,A / B   où les T chantent avec les S)
Dans la version 2, il faut que les hampes de S et A (en fait : S1 et S2) soient vers le haut.
Quelle est la manière simple d'y parvenir ?
(j'ai essayé \voiceOne, \voiceThree et \voiceTwo dans la première \staff,   de même que \partcombine,   sans succès)
La manière compliquée serait d'écrire une fonction qui produirait, à partir de deux variables musicales, une nouvelle variable musicale, composée d'une suite d'accords de deux sons (ce que j'ai fait manuellement dans l'exemple "version 3"), et de l'utiliser en \voiceOne. Le challenge tente-t-il quelqu'un ? 

Merci,
Germain

pj : "test-partcombine.ly" et "test-partcombine.png"

ps : j'ai volontairement laissé dans le source des paroles, des \transpose et une voix muette (\IBars) destinée à placer les barres de mesures (car "en vrai" j'utilise le snippet "free meter" de Rune Zedeler), pour rester au plus proche de mon projet.

pps : dans mon exemple, les deux voix ont le même rythme. Mais ce n'est pas forcément toujours le cas.

---

From: "Gilles THIBAULT" <[email-masked]>
Date: Mon, 26 May 2008 22:36:10 +0200

En remplaçant dans la version 2
     \new Voice = "one" { \partcombine
              \transpose c f \INotesDiscantus 
              \transpose c f \INotesCantus
     }
     \new Voice { \voiceTwo \transpose c f \INotesFiller  }

par 

  \new Voice = "one" {\voiceOne <<
           \transpose c f \INotesDiscantus 
           \transpose c f \INotesCantus >>
     }
     \new Voice { \voiceTwo \transpose c f \INotesFiller  }
on obtient pareil que ton exemple 3.
J'ai essayé aussi avec

  \new Voice = "one" { <<
           {\voiceOne\transpose c f \INotesDiscantus }
           {\voiceThree \transpose c f \INotesCantus} >>
     } 
  \new Voice { \voiceTwo \transpose c f \INotesFiller  }
ça marche aussi.

Gilles

---

From: "Germain G. Ivanoff-Trinadtzaty" <[email-masked]>
Date: Mon, 26 May 2008 23:53:04 +0200

<<
    Merci
    beaucoup !
Germain
  ----- Original Message ----- 
  From: Gilles THIBAULT 
  To: Germain G. Ivanoff-Trinadtzaty ; Lilypond French users 
  Sent: Monday, May 26, 2008 10:36 PM
  Subject: Re: \partcombine ou \voiceThree

  par 

    \new Voice = "one" { <<

  Gilles