Masquer des portée identiques

Bonjour à tous !
Je suis en train de terminer une partition (encore du Telemann). Dans un des mouvements, la basse et l’alto jouent la même chose pendant deux systèmes (à une octave d’intervalle). Il n’y a pas moyen de regrouper ça proprement ? Bien sûr il faudra que ça apparaisse quand même dans la partie séparée de l’alto (c’est lui que je pense masquer) ; je demande au cas où il y aurait une façon de ne pas faire deux fichiers d’alto différent (un pour le conducteur et un pour la partie séparée).
Merci d’avance !
L.C.

Voilà une question récurrente en écriture orchestrale,
pour laquelle je n'ai pas encore trouvé de solution satisfaisante.

C'est une fonctionnalité qui me manque aussi et à laquelle je pensais
faire une demande depuis un certain temps, c'est chose faite !
N'hésitez pas à compléter/corriger ce que j'ai dit (j'ai mis Loïc
et Jean-François en copie).

De plus si vous avez des exemples de partitions imprimées (maisons
d'éditions renommées ou règles de gravure musicale) montrant les façons
de faire ces "combinaisons/divisi" sur différente portées, ce serait
gentil de les envoyer aux développeurs.

Il me semble que le problème n'a pas de solution, car il faut que
LilyPond ait fixé les sauts de système pour manuellement cacher les
voix séparées ou la voix unique. Pas évident donc, mais une solution
pour la version 2.18 ?

En fait en prenant le code de "partcombine" et en mixant/modifiant
RemoveEmptyStaves pour qu'il supprime les portées lorsque la musique
est identique (comme partcombine) plutôt que lorsqu'il y a des silences
on devrait déjà s'approcher d'une version basique de cette
fonctionnalité il me semble.
Mais je laisse les développeurs dire ce qu'ils en pensent, pour la
version 2.18 peut-être.

Bref, les suggestions sont les bienvenues ...

Tout à fait.

Cordialement,
Xavier

···

2012/8/25 j-f.lucarelli <****@****>:

--
Xavier Scheuer <****@****>

Merci pour ces réponses ! Je vais bidouiller manuellement... Dans mon cas, l’idéal — en l’état du moins — aurait été d’écrire une petite fonction, et je vois assez bien comment je l’aurais écrite en LaTeX, mais pas en Scheme. Si je trouve la patience et que j’arrive à le faire, je l’enverrai ! Dans tous les cas, je vous enverrai le lien vers la partition quand elle sera en ligne (sur IMSLP, comme d’hab). De toute façon ça se produit juste ponctuellement dans la partition en question (sur cinq voix, aussi, ç’aurait été un peu douteux d’en mettre deux à l’unisson tout le temps ! c’est pas du Vivaldi non plus).

Autre question du même genre, et je suis à peu près sûr d’avoir déjà passer ça : à la fin d’un mouvement, il ne reste qu’un seul système d’un StaffGroup (je fais RemoveEmptyStaves), et du coup je n’ai plus le crochet du StaffGroup, mais j’aimerais l’avoir quand même. En fait, la partition est comme ça :
<< ob StaffGroup ( vl1 vl2 vla bc ) >>
et à la fin, il n’y a plus que ob et bc. Je trouverais ça plus joli avec le crochet sur une seule portée, plutôt que d’avoir deux portées sans rien sur le côté.

En fait en prenant le code de "partcombine" et en mixant/modifiant
RemoveEmptyStaves pour qu'il supprime les portées lorsque la musique
est identique (comme partcombine) plutôt que lorsqu'il y a des silences
on devrait déjà s'approcher d'une version basique de cette
fonctionnalité il me semble.

J'ai bien lu le message envoyé à la liste anglaise.
Est-ce que quelque chose comme ça peut faire l'affaire ?

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

%%%%%%%%%%%%%%%%% internal %%%%%%%%%%%%%%%%%%%
%% see http://lsr.dsi.unimi.it/LSR/Item?id=312
killPercentRepeats = {
  \set Staff.keepAliveInterfaces = #'(
     rhythmic-grob-interface
     lyric-interface
     stanza-number-interface
     ;;percent-repeat-interface ; we comment that
     )
}

staffApart = #(define-music-function (parser location musA musB) (ly:music? ly:music?)
#{
    <<
      $musA
      \context Staff = "B" {
         \override Staff.PercentRepeat #'stencil = ##f
         $musB
         \revert Staff.PercentRepeat #'stencil
      }
     >>
#})

%%%%%%%%%%%%%%%%%%% user %%%%%%%%%%%%%%%%%%%%%%%

musicA = { \repeat unfold 17 c''1
            \staffApart
                { \repeat unfold 5 c''1 }
                { \repeat unfold 5 f'1 }
            \repeat unfold 18 c''1

}
musicB = { \killPercentRepeats \repeat percent 40 s1 }

              %%%%%%%%% the score %%%%%%%%%%%

\layout {
   \context {
     \Staff
       \RemoveEmptyStaves
       \override VerticalAxisGroup #'remove-first = ##t
   }
}

\new GrandStaff {
   <<
     \context Staff = "A" \musicA
     \context Staff = "B" \musicB
   >>
  }

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

Gilles

Il me semble que le problème n'a pas de solution, car il faut que
LilyPond ait fixé les sauts de système pour manuellement cacher les
voix séparées ou la voix unique. Pas évident donc, mais une solution
pour la version 2.18 ?

En fait en prenant le code de "partcombine" et en mixant/modifiant
RemoveEmptyStaves pour qu'il supprime les portées lorsque la musique
est identique (comme partcombine) plutôt que lorsqu'il y a des silences
on devrait déjà s'approcher d'une version basique de cette
fonctionnalité il me semble.

On peut déjà dire soi-même quels passages sont à éluder, de façon à ce que
la portée disparaisse dans le conducteur.

%% Début de zone à éluder
startHaraKiri = \set Staff.keepAliveInterfaces = #'()
%% Fin de zone à éluder
stopHaraKiri = \unset Staff.keepAliveInterfaces

%% Début de zone à ne surtout pas éluder
%% (même s'il n'y a que des silences)
noHaraKiri = \set Staff.keepAliveInterfaces =
#'(multi-measure-interface
    rhythmic-grob-interface
    lyric-interface
    percent-repeat-item-interface
    percent-repeat-interface
    stanza-number-interface)
%% Fin de zone à ne surtout pas éluder
revertNoHaraKiri = \unset Staff.keepAliveInterfaces

\new StaffGroup \relative c'' <<
   \new Staff { g1\break g\break g }
   \new Staff \with { \RemoveEmptyStaves } {
     e1 \startHaraKiri e \stopHaraKiri e
   }
   \new Staff { c1 c c }

···

Le 26 août 2012 à 02:07, Xavier Scheuer a écrit :

Testé et approuvé ! Très simple à utiliser en plus… Merci !

···

Le 26/08/12 10:59, Nicolas Sceaux a écrit :

On peut déjà dire soi-même quels passages sont à éluder, de façon à ce que
la portée disparaisse dans le conducteur.

%% Début de zone à éluder
startHaraKiri = \set Staff.keepAliveInterfaces = #'()
%% Fin de zone à éluder
stopHaraKiri = \unset Staff.keepAliveInterfaces

%% Début de zone à ne surtout pas éluder
%% (même s'il n'y a que des silences)
noHaraKiri = \set Staff.keepAliveInterfaces =
#'(multi-measure-interface
     rhythmic-grob-interface
     lyric-interface
     percent-repeat-item-interface
     percent-repeat-interface
     stanza-number-interface)
%% Fin de zone à ne surtout pas éluder
revertNoHaraKiri = \unset Staff.keepAliveInterfaces

\new StaffGroup \relative c'' <<
    \new Staff { g1\break g\break g }
    \new Staff \with { \RemoveEmptyStaves } {
      e1 \startHaraKiri e \stopHaraKiri e
    }
    \new Staff { c1 c c }

_______________________________________________
liste de diffusion lilypond-user-fr
lilypond-user-fr@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user-fr