lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: sons filés


From: Jean Abou Samra
Subject: RE: sons filés
Date: Sun, 4 Jul 2021 16:48:44 +0200 (CEST)

> Le 04/07/2021 11:08, CHARADE Olivier <olivier.charade@cnrs.fr> a écrit :
> 
> 
> Voilà bien une commande sur mesure dont je ne me serais jamais attendu à ce 
> qu'elle existe. Pourtant, ce n'est pas faute d'avoir parcouru cette page de 
> la doc.
> Effectivement j'aimerais que chaque soufflet soit un peu plus large. D'un 
> point de vue général, ce qui me gênait dans la solution que j'adoptais, 
> c'était l'asymétrie du résultat. Pour comparer, maintenant que j'ai relu 
> cette page de la doc, j'ai tenté:
> 
> \override Hairpin.minimum-length = #50
>  <<{c'1}\\{s2\< s4.\> s8\!}>>
>  c'1\espressivo
> 
> 
> Cependant quelque soit la valeur de longueur minimale (j'ai commencé à 5, 
> comme dans la doc), je ne vois rien qui bouge.
> Je pense comprendre que l'\espressivo appelle un symbole qui n'a rien à voir 
> d'un point de vue programmation avec les soufflets et qu'il est normal que 
> l'\override le laisse de marbre, mais pour les “vrais“ soufflets, quelque 
> chose m'échappe.


Pour les vrais soufflets, le souci provient du fait
que le \override s'adresse à un contexte Voice, et
la construction << \\ >> fait que les objets Hairpin
sont créés dans un autre contexte Voice. Les choses
rentrent dans l'ordre en plaçant le \override dans
ce contexte-là :

\version "2.22.0"

{
  <<
    { c'1 }
    \\
    {
      \override Hairpin.minimum-length = 10
      s2\< s4.\> s8\!
    }
  >>
  c'1\espressivo
}

Par ailleurs, \espressivo est effectivement un script
ponctuel qui n'a rien à voir avec les vrais soufflets,
et peut s'obtenir solitaire avec

\version "2.22.1"
\markup \musicglyph "scripts.espr"

Pour ajuster sa longueur, on peut utiliser la même
syntaxe \markup :

\version "2.22.1"

espressivo =
\tweak stencil #ly:text-interface::print
\tweak text \markup \scale #'(2 . 1.2) \musicglyph "scripts.espr"
\tweak padding 0.6
\espressivo

{
  c'1\espressivo
}

L'astuce du #ly:text-interface::print est décrite sur
cette page de la documentation :

https://lilypond.org/doc/v2.23/Documentation/notation/modifying-stencils

Pour centrer une note au milieu de sa mesure,
je pense que la solution la plus simple reste

\version "2.22.1"

{
  d4 4 4 4
  \tweak extra-spacing-width #'(-4 . 0) d1
}

(On pourrait écrire des graveurs en Scheme qui
créent des Spanners, mais cela deviendrait immédiatement
très compliqué.)


Cordialement,
Jean



reply via email to

[Prev in Thread] Current Thread [Next in Thread]