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

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

RE: sons filés


From: CHARADE Olivier
Subject: RE: sons filés
Date: Sun, 4 Jul 2021 16:51:57 +0000

Bon là, je crois que j'ai vraiment tout ce qu'il me faut pour jouer avec les sons filés.

Pour l'astuce avec :print, je paraphraserai Bourvil dans je ne sais plus quel film:

Ah non! J'ai déjà compris trois fois aujourd'hui, là je peux plus.

Je relirai tranquillement cette page demain. Promis.

Cordialement,

Olivier


De : Jean Abou Samra <jean@abou-samra.fr>
Envoyé : dimanche 4 juillet 2021 16:48:44
À : CHARADE Olivier; lilypond-user-fr@gnu.org
Objet : RE: sons filés
 
> 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]