Layout d'un texte de substitution

Bonsoir à l'équipe,

J'utilise pour un crescendo un texte de substitution, par les instructions
suivantes :
  \set crescendoText = \markup { \italic "sempre cresc." }
  \set crescendoSpanner = #'text

Mais je voudrais ajuster la position du "sempre cresc." via la propriété
extra-offset.
Pourtant, je n'arrive pas à trouver l'objet à spécifier dans l'instruction
\override
J'ai essayé Voice.Hairpin, Voice.DynamicText, ... sans succès

Quelqu'un aurait-il une idée ?

Merci d'avance,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Layout-d-un-texte-de-substitution-tp5589622p5589622.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Seventies wrote:

Bonsoir à l'équipe,

J'utilise pour un crescendo un texte de substitution, par les instructions
suivantes :
  \set crescendoText = \markup { \italic "sempre cresc." }
  \set crescendoSpanner = #'text

Mais je voudrais ajuster la position du "sempre cresc." via la propriété
extra-offset.
Pourtant, je n'arrive pas à trouver l'objet à spécifier dans l'instruction
\override
J'ai essayé Voice.Hairpin, Voice.DynamicText, ... sans succès

Quelqu'un aurait-il une idée ?

une idée, oui:

\override DynamicTextSpanner #'extra-offset =#'( 5 . 0 )

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Layout-d-un-texte-de-substitution-tp5589622p5589703.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

== En réponse au message du 01-10-2010, 00:45:21 ==

Seventies wrote:

Bonsoir à l'équipe,

J'utilise pour un crescendo un texte de substitution, par les instructions
suivantes :
  \set crescendoText = \markup { \italic "sempre cresc." }
  \set crescendoSpanner = #'text

Mais je voudrais ajuster la position du "sempre cresc." via la propriété
extra-offset.
Pourtant, je n'arrive pas à trouver l'objet à spécifier dans l'instruction
\override
J'ai essayé Voice.Hairpin, Voice.DynamicText, ... sans succès

Quelqu'un aurait-il une idée ?

une idée, oui:

\override DynamicTextSpanner #'extra-offset =#'( 5 . 0 )
--

Oui, ok, je connais, pour le décalage vertical. Malheureusement, c'est un décalage latéral que je souhaiterais, pour cause de débordement des marges, malgré le \override Score.PaperColumn #'keep-inside-line = ##t
J'ai essayé la justification à droite (\override DynamicText #'self-alignment-X = #1), mais ça ne fonctionne qu'avec les nuances absolues (\mf, ...), pas avec les textes.

Par contre, je n'ai pas tenté le \textLenghtOn, mais je crains qu'il ne fonctionne qu'avec les \markup.

Sinon, il reste à tricher, en déplaçant le point d'ancrage.

Jean-François

···

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

========================================

Et si tu ajoutes
  \override Score.NonMusicalPaperColumn #'keep-inside-line = ##t
ça donne quoi ?

Cordialement,
Xavier

···

2010/10/1 j-f.lucarelli <****@****>:

Oui, ok, je connais, pour le décalage vertical. Malheureusement,
c'est un décalage latéral que je souhaiterais, pour cause de
débordement des marges, malgré le
  \override Score.PaperColumn #'keep-inside-line = ##t

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

== En réponse au message du 01-10-2010, 19:06:26 ==

Oui, ok, je connais, pour le décalage vertical. Malheureusement,
c'est un décalage latéral que je souhaiterais, pour cause de
débordement des marges, malgré le
  \override Score.PaperColumn #'keep-inside-line = ##t

Et si tu ajoutes
\override Score.NonMusicalPaperColumn #'keep-inside-line = ##t
ça donne quoi ?

Cordialement,
Xavier

Rien de plus malheureusement, cette instruction figurait déjà dans le fichier commun à toutes les partitions.

Par contre, en relisant la doc, je constate que ces instructions doivent être insérées dans un bloc \new Score
Mais alors, ça coince à la compilation avec un "unexpected \with".

Voir la doc en GNU LilyPond – Manuel d’initiation : 4.6.4 Options ralentissant le traitement

.....

Je viens de passer un certain temps à revérifier l'imbrication des fichiers (ce qui est loin d'être évident), et j'ai une structure du genre :

\score {
  \keepWithTag #'globalScore
  <<
    \new StaffGroup
    <<
      \staffSbMcFlote
      \staffSbMcOboe
      ...

Les variables \staffSbMcFlote, \staffSbMcOboe, ... contiennent un \new Voice, à l'intérieur duquel on trouve les
  \override PaperColumn #'keep-inside-line = ##t
  \override NonMusicalPaperColumn #'keep-inside-line = ##t

Elles sont donc présentes dans un \new Voice et non dans un \new Score

L'erreur pourrait-elle provenir de là ?

Et si oui, comment les insérer dans le \score de niveau supérieur, puisque cette insertion provoque une erreur de syntaxe et l'interruption de la compilation.

Là, je sèche un peu :-/

···

2010/10/1 j-f.lucarelli <****@****>:

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

========================================

Rien de plus malheureusement, cette instruction figurait déjà dans le
fichier commun à toutes les partitions.

Par contre, en relisant la doc, je constate que ces instructions
doivent être insérées dans un bloc \new Score
Mais alors, ça coince à la compilation avec un "unexpected \with".

Bizarre, si mes souvenirs sont bons, j'ai vu passer un message qui
demandait de supprimer tous les \new Score présents dans la doc.
Je vais me renseigner...

Les variables \staffSbMcFlote, \staffSbMcOboe, ... contiennent un
\new Voice, à l'intérieur duquel on trouve les
\override PaperColumn #'keep-inside-line = ##t
\override NonMusicalPaperColumn #'keep-inside-line = ##t

Elles sont donc présentes dans un \new Voice et non dans un \new Score

L'erreur pourrait-elle provenir de là ?

Oui.
Il faut les appliquer au contexte Score.
Il te suffit de mettre

  \override Score.PaperColumn #'keep-inside-line = ##t
\override Score.NonMusicalPaperColumn #'keep-inside-line = ##t

même dans le contexte Voice ce sera appliqué au Score. :wink:

Et si oui, comment les insérer dans le \score de niveau supérieur,
puisque cette insertion provoque une erreur de syntaxe et
l'interruption de la compilation.

Ou bien

  \layout {
    \context {
      \Score
      \override PaperColumn #'keep-inside-line = ##t
      \override NonMusicalPaperColumn #'keep-inside-line = ##t
    }
  }

ce qui revient strictement au même (attention, pas de "Score." après
le \override cette fois !).

On peut utiliser \with avec une portée ( \new Staff ) ou une voix
( \new Voice ) en particulier, mais le \new Score est fortement
déconseillé (si pas interdit), j'en ignore la raison exacte (une
histoire de programmation ?).

Cordialement,
Xavier

···

2010/10/1 j-f.lucarelli <****@****>:

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

Oui, ok, je connais, pour le décalage vertical. Malheureusement, c'est un
décalage latéral que je souhaiterais,

dans la formule

\override DynamicTextSpanner #'extra-offset =#'( x . y )

x signifie le décalage horizontal, y le décalage vertical ( peut être
négatif)

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Layout-d-un-texte-de-substitution-tp5589622p5592740.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

== En réponse au message du 01-10-2010, 21:29:20 ==

Bizarre, si mes souvenirs sont bons, j'ai vu passer un message qui
demandait de supprimer tous les \new Score présents dans la doc.
Je vais me renseigner...

Pas encore vu, mais ça me ferait un gros travail ...

L'erreur pourrait-elle provenir de là ?

Oui.
Il faut les appliquer au contexte Score.
Il te suffit de mettre

\override Score.PaperColumn #'keep-inside-line = ##t
\override Score.NonMusicalPaperColumn #'keep-inside-line = ##t

même dans le contexte Voice ce sera appliqué au Score. :wink:

Le contexte Score. est déjà défini, ça ne semble pas venir de là

Ou bien

\layout {
   \context {
     \Score
     \override PaperColumn #'keep-inside-line = ##t
     \override NonMusicalPaperColumn #'keep-inside-line = ##t
   }
}

ce qui revient strictement au même (attention, pas de "Score." après
le \override cette fois !).

Là, je vais essayer

On peut utiliser \with avec une portée ( \new Staff ) ou une voix
( \new Voice ) en particulier, mais le \new Score est fortement
déconseillé (si pas interdit), j'en ignore la raison exacte (une
histoire de programmation ?).

Oui, je m'en doute, il refuse la compilation. Pourtant, c'est l'exemple repris du lien cité plus haut (GNU LilyPond – Manuel d’initiation : 4.6.4 Options ralentissant le traitement)

Mais il est vrai que c'est la version 2.12.

Pas le temps aujourd'hui, je regarderais sans doute ce soir.

Grand merci,

Jean-François

···

========================================

== En réponse au message du 01-10-2010, 22:13:32 ==

dans la formule

\override DynamicTextSpanner #'extra-offset =#'( x . y )

x signifie le décalage horizontal, y le décalage vertical ( peut être
négatif)

Magnifique, ça marche, voilà le seul layer que je n'avais pas tenté (DynamicTextSpanner) :-/

Ceci dit, je vais regarder également du côté de la solution de Xavier, pour obtenir un résultat qui ne dépende pas de la mise en page.

Merci à tous,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Layout-d-un-texte-de-substitution-tp5589622p5592740.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

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

========================================

== En réponse au message du 01-10-2010, 21:29:20 ==

Ou bien

\layout {
   \context {
     \Score
     \override PaperColumn #'keep-inside-line = ##t
     \override NonMusicalPaperColumn #'keep-inside-line = ##t
   }
}

ce qui revient strictement au même (attention, pas de "Score." après
le \override cette fois !).

Non, ça ne marche pas non plus. Mais au moins, pas d'erreur à la compilation.
Par acquis de conscience, j'ai supprimé ces définitions du fichier commun à tous les fichiers de notes (pour éviter une redondance des définitions). Mais rien de mieux.

On peut utiliser \with avec une portée ( \new Staff ) ou une voix
( \new Voice ) en particulier, mais le \new Score est fortement
déconseillé (si pas interdit), j'en ignore la raison exacte (une
histoire de programmation ?).

Effectivement, le \new Score \with { ... donne une erreur de syntaxe et suspend la compilation, tandis que le
\score \with { ... donne une erreur, mais poursuit la compilation en ignorant le \with

···

2010/10/1 j-f.lucarelli <****@****>:

Cordialement,
Xavier

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

========================================