markup et \musicglyph

Bonjour à l'équipe,

Juste un petit détail, mais qui provoque un défaut gênant à l'affichage.
Je dois mettre entre crochets une série de "sforzato" (>) de la manière
suivante :
[> > > >]
Ainsi, pour le premier, j'utilise :
a4 ^\markup {\concat {"[" \musicglyph #"scripts.sforzato"}}

et pour le dernier :
c4 ^\markup {\concat {\musicglyph #"scripts.sforzato" "]"}

Premier inconvénient (vertical), les crochets sont nettement relevés par
rapport au ">", il y a moyen de s'en accommodant en utilisant des \lower #1
ou \raise #1 pour ajuster le premier symbole par rapport au second.

Plus gênant (dans le sens horizontal) : dans le premier cas, le "[" et le
">" sont quais superposés, et dans le second cas, il y a un grand espace
entre le ">" et le "]".

Je peux traiter le premier cas en ajoutant "\hspace #2", mais impossible de
rapprocher les signes dans le second cas.

Petit exemple minimal :

\version "2.16.2"
\new Staff {
  \relative c'' {
    c4 ^\markup {\concat {"[" \musicglyph #"scripts.sforzato"}} (
    b )
    a ^\markup {\concat {\musicglyph #"scripts.sforzato" "]"}} (
    b )
  }
}

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

L'ajout ou la suppression de \concat ne change rien.

Alignement vertical

\version "2.16.2"
\new Staff {
  \relative c'' {
    c4 ^\markup {\concat {\lower #0.6 "[" \musicglyph #"scripts.sforzato"}}
(
    b )
    a -\tweak #'extra-offset #'(0 . -0.6) ^\markup {\concat {\raise #0.6
\musicglyph #"scripts.sforzato" "]"}} (
    b )
  }
}

Un peu tordu, mais ça fonctionne :

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

Pour l'ajustement horizontal, je peux modifier le crochet de gauche par un
\hspace, mais rien pour rapprocher le crochet de droite.

Est-ce un bug connu ? Y a-t-il moyen de corriger cette situation ?

Merci d'avance de votre aide,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/markup-et-musicglyph-tp7580357.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Bonjour à l'équipe,

Bonjour Jean-François,

Est-ce un bug connu ?

Je ne pense pas qu'on puisse parler de "bug" ; l'alignement des glyphes est
ainsi faite...

Y a-t-il moyen de corriger cette situation ?

Pour bien les aligner, je te propose une solution un peu tordue mais qui
fonctionne : utiliser un spanner.

\version "2.16.2"

\version "2.16.2"

\new Staff {

\relative c'' {

\once\override TextSpanner #'font-shape = #'upright

\once \override TextSpanner #'style = #'dashed-line

\once \override TextSpanner #'dash-period = #0

\once \override TextSpanner #'bound-details =

#`((left

(text . ,#{ \markup

{"[ " \raise #0.6 \musicglyph #"scripts.sforzato"} #})

(Y . 0)

(padding . -3)

(attach-dir . 0))

(right

(text . ,#{ \markup\concat

{\raise #0.6 \musicglyph #"scripts.sforzato" "]"} #})

(Y . 0)

(padding . 0)

(attach-dir . 0)))

c4 \startTextSpan (b ) c-\tweak #'extra-offset #'(0 . 1.8)^> c

c-\tweak #'extra-offset #'(0 . 1.8)^> c a\stopTextSpan ( b )

}

}

Bien sûr, il faut corriger les hauteurs des sforzati en les "tweakant"...

Bonne journée,
Pierre

···

Le 8 septembre 2013 12:57, Seventies <****@****> a écrit :

Seventies wrote

Bonjour à l'équipe,

Juste un petit détail, mais qui provoque un défaut gênant à l'affichage.
Je dois mettre entre crochets une série de "sforzato" (>) de la manière
suivante :
[> > > >]
Ainsi, pour le premier, j'utilise :
a4 ^\markup {\concat {"[" \musicglyph #"scripts.sforzato"}}

et pour le dernier :
c4 ^\markup {\concat {\musicglyph #"scripts.sforzato" "]"}

Premier inconvénient (vertical), les crochets sont nettement relevés par
rapport au ">", il y a moyen de s'en accommodant en utilisant des \lower
#1 ou \raise #1 pour ajuster le premier symbole par rapport au second.

Plus gênant (dans le sens horizontal) : dans le premier cas, le "[" et le
">" sont quais superposés, et dans le second cas, il y a un grand espace
entre le ">" et le "]".

Je peux traiter le premier cas en ajoutant "\hspace #2", mais impossible
de rapprocher les signes dans le second cas.

Petit exemple minimal :

\version "2.16.2"
\new Staff {
  \relative c'' {
    c4 ^\markup {\concat {"[" \musicglyph #"scripts.sforzato"}} (
    b )
    a ^\markup {\concat {\musicglyph #"scripts.sforzato" "]"}} (
    b )
  }
}

L'ajout ou la suppression de \concat ne change rien.

bonjour
je crois qu'il y a eu un changement de comportement dans la 2.17.9 (je ne
suis pas sûr si les corrections horizontales (halign, hspace n'acceptaient
pas les valeurs négatives?)

bref voici une solution

\version "2.17.25"
\new Staff {
  \relative c'' {
    \override TextScript #'padding = #1.3
    \override TextScript #'self-alignment-X = #LEFT
    c4(^\markup \general-align #Y #CENTER {
      "["
      \hspace #-.6
      \musicglyph #"scripts.sforzato"
    }
    b)
    a(^\markup \general-align #Y #CENTER {
      \musicglyph #"scripts.sforzato"
      \hspace #-.6
      "]"
    }
    b )
  }
}

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

Eluze

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/markup-et-musicglyph-tp7580357p7580359.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

Merci pour ces solutions.

Effectivement, la version 2.16 n'accepte pas les valeurs négatives pour
hspace - en fait, il attribue 0 à toute valeur négative.

Je garde donc cette seconde solution sur le coin du feu pour les travaux
prochains. En attendant, la solution de Pierre n'est pas tellement plus
tordue que celle que j'utilise, mais présente des résultats visuels
nettement meilleurs.

Grand merci à tous,

Jean-François

···

--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/markup-et-musicglyph-tp7580357p7580360.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.