Supprimer un repère \mark

Bonsoir à l'équipe,

Voilà, un problème qui traîne depuis quelques jours, et qui résiste encore
et toujours à l'envahisseur :
À partir d'une partition orchestrale complète, je tire une "partition
d'étude"
J'introduis donc un \removeEmptyStave, ce qui fonctionne de manière quasi
parfaite, sauf pour les repères d'avancement \mark \default

En effet, j'ai placé une répétition des graveurs suivants sur la portée des
violons :
  \consists "Mark_engraver"
  \consists "Metronome_mark_engraver"
  \consists "Staff_collecting_engraver"
comme cela se fait habituellement, pour obtenir un rappel de ces repères sur
la portée des violons.

Mais là où tous les vents se taisent, j'obtiens un redoublement du repère,
ce qui est très peu esthétique :

<http://lilypond-french-users.1298960.n2.nabble.com/file/n7581841/mark.png&gt;

Je cherche donc à supprimer l'une de ces marques. Mais quelque soit la
manière utilisée (usage d'un \tag, \tweak stencil ##f ou autre), j'obtiens
un message d'avertissement du genre : "deux marques d'avancement simultanée,
celle-ci sera ignorée". Et par la suite, j'ai un décalage dans la succession
des repères dû à ce repère ignoré.
Même message d'avertissement et même décalage si je force le mark suivant
par un \mark #9

Je teste ensuite une méthode plus simple, en faisant précéder le \mark par
un
  \tag #'studyScore \override Score.RehearsalMark.stencil = ##f
ou encore
  \tag #'studyScore \override Score.RehearsalMark.transparent = ##t

Plus aucun message d'avertissement, mais le repère s'imprime malgré tout.

Qui aurait une solution, ou même une ébauche de solution ?
Il faudrait, idéalement, suspendre temporairement un graveur, mais je ne
trouve aucune indication sur ce sujet dans la documentation.

Merci d'avance,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Supprimer-un-repere-mark-tp7581841.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

2014-10-26 19:37 GMT+01:00 Seventies <****@****>:

Bonsoir à l'équipe,

Voilà, un problème qui traîne depuis quelques jours, et qui résiste encore
et toujours à l'envahisseur :
À partir d'une partition orchestrale complète, je tire une "partition
d'étude"
J'introduis donc un \removeEmptyStave, ce qui fonctionne de manière quasi
parfaite, sauf pour les repères d'avancement \mark \default

En effet, j'ai placé une répétition des graveurs suivants sur la portée des
violons :
\consists "Mark_engraver"
\consists "Metronome_mark_engraver"
\consists "Staff_collecting_engraver"
comme cela se fait habituellement, pour obtenir un rappel de ces repères sur
la portée des violons.

Mais là où tous les vents se taisent, j'obtiens un redoublement du repère,
ce qui est très peu esthétique :

<http://lilypond-french-users.1298960.n2.nabble.com/file/n7581841/mark.png>

Je cherche donc à supprimer l'une de ces marques. Mais quelque soit la
manière utilisée (usage d'un \tag, \tweak stencil ##f ou autre), j'obtiens
un message d'avertissement du genre : "deux marques d'avancement simultanée,
celle-ci sera ignorée". Et par la suite, j'ai un décalage dans la succession
des repères dû à ce repère ignoré.
Même message d'avertissement et même décalage si je force le mark suivant
par un \mark #9

Je teste ensuite une méthode plus simple, en faisant précéder le \mark par
un
\tag #'studyScore \override Score.RehearsalMark.stencil = ##f
ou encore
\tag #'studyScore \override Score.RehearsalMark.transparent = ##t

Plus aucun message d'avertissement, mais le repère s'imprime malgré tout.

Qui aurait une solution, ou même une ébauche de solution ?
Il faudrait, idéalement, suspendre temporairement un graveur, mais je ne
trouve aucune indication sur ce sujet dans la documentation.

Bonjour,

Pas facile de répondre sans exemple de code minimal.

Si j'ai bien suivi tu souhaites désactiver les impressions
d'indications de repères supplémentaires de la portée de violons
lorsque celle-ci se retrouve en haut du système (harmonie tacet ->
portées enlevées), puisqu'à ce moment elles s'ajoutent aux indications
de repères en haut de tout le système.

As-tu essayé en mettant un
\override Staff.RehearsalMark.stencil = ##f
dans la portée de violons uniquement ?
En choisissant le context Staff ou lieu de Score cela devrait supprimer
les indications de repères de la portée de violons, en gardant celles
du système complet uniquement (pas testé).

Sinon il est possible qu'il y ait un bug dans la gestion de
"Staff_collecting_engraver". D'ailleurs ça serait bien qu'il gère ce
genre de situations automatiquement.

A moins que cela ne soit lié à un autre bug de "Mark_engraver".
https://code.google.com/p/lilypond/issues/detail?id=2199

Cordialement,
Xavier

···

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

Hello, Xavier,
Entièrement d'accord pour l'exemple minimal, j'aurais dû, mais pour
l'instant, avec ce problème qui me pèse depuis plus de huit jours, je sature
un peu.
Je prends donc quelques jours de relâche avant de retourner sur ce sujet, et
là, je commencerai par un exemple minimal (qui, souvent, permet de trouver
une solution sans même perturber le forum :-s )

"D'ailleurs ça serait bien qu'il gère ce genre de situations
automatiquement"

Voilà une réflexion de bon aloi, d'autant que sous la version 2.16, il me
semble que ça tournait sans problème.
Avant de publier cet exemple minimal, je tenterai de restaurer
temporairement la version 2.16

Cordialement,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Supprimer-un-repere-mark-tp7581841p7581851.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Voilà, quelque peu tardivement, un exemple minimum :

\version "2.18.2"
staffI = \new Staff {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 R1
  \mark \default
  \repeat unfold 10 R1
  \mark \default
  \repeat unfold 8 {c''1}
}

staffII = \new Staff \with {
  \RemoveEmptyStaves
  \consists "Mark_engraver"
  \consists "Metronome_mark_engraver"
  \consists "Staff_collecting_engraver"
} {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 c''1
  \mark \default
  \repeat unfold 10 c''1
  \mark \default
  \repeat unfold 8 {c''1}
}

staffIB = \new Staff \with \RemoveEmptyStaves {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 R1
  \mark \default
  \repeat unfold 10 R1
  \mark \default
  \repeat unfold 8 {c''1}
}

staffIIB = \new Staff \with {
  \RemoveEmptyStaves
  \consists "Mark_engraver"
  \consists "Metronome_mark_engraver"
  \consists "Staff_collecting_engraver"
} {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 c''1
  \mark \default
  \repeat unfold 10 c''1
  \mark \default
  \repeat unfold 8 {c''1}
}

\score {
  <<
  \staffI
  \staffII
  >>
}

\score {
  <<
  \staffIB
  \staffIIB
  >>
}

Dans le premier cas, tout se passe correctement.
Dans le second cas, un repère est imprimé là où il devrait être absent.

Si je modifie la variable staffIB comme ceci :

staffIB = \new Staff \with \RemoveEmptyStaves {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 R1
  \override Score.RehearsalMark.stencil = ##f
  \mark \default
  \revert Score.RehearsalMark.stencil
  \repeat unfold 10 R1
  \mark \default
  \repeat unfold 8 {c''1}
}

rien ne change.

Par contre, si on écrit :

staffIB = \new Staff \with \RemoveEmptyStaves {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 R1
  \mark \default
  \override Score.RehearsalMark.stencil = ##f
  \repeat unfold 10 R1
  \revert Score.RehearsalMark.stencil
  \mark \default
  \repeat unfold 8 {c''1}
}

le repère B disparaît, mais sur les deux portées - c'est normal,
RehearsalMark appartient au contexte Score.

Mais plus bizarre, si je supprime le repère B et que je force le repère C :

staffIB = \new Staff \with \RemoveEmptyStaves {
  \repeat unfold 8 {c''1}
  \mark \default
  \repeat unfold 10 R1
% Repère supprimé
  \repeat unfold 10 R1
  \mark 3 % Forcé à "C"
  \repeat unfold 8 {c''1}
}

j'obtiens le message cité en tête de ce post :

c:/users/papa/appdata/local/temp/frescobaldi-cm4kgv/tmp7hnbuy/document.ly:48:3:
Avertissement : Deux événements mark simultanés, rejet de celui-ci
  
  \mark \default

c:/users/papa/appdata/local/temp/frescobaldi-cm4kgv/tmp7hnbuy/document.ly:33:3:
Avertissement : Événement mark précédent ici
  
  \mark 3

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Supprimer-un-repere-mark-tp7581841p7581866.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Une solution (en attendant mieux) :
L'utilisation de
   \tweak RehearsalMark.stencil ##f
devant le \mark \default supprime le repère d'avancement, mais donne
toujours des avertissements à la compilation.

Il reste à tester cette astuce en vraie grandeur.

Cordialement,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Supprimer-un-repere-mark-tp7581841p7581867.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.