Subject: [LilyPond] [Général] Écrire un crescendo étalé sur plusieurs mesures

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Fri, 15 Dec 2023 15:30:45 +0000

Bonjour à toute la communauté!

Je reviens à la charge avec un «serpent de mer» qui a déjà été évoqué et traité ici, à savoir une expression de nuance qu'on retrouve partout dans les partitions: le crescendo, coupé le plus souvent en trois syllabes (cre scen do) et étalé sur un nomble x de mesures, avec des traitillés (Spanners) entre les syllabes. L'idéal est évidemment que LyliPond se charge de couper cette expression lorsqu'elle se prolonge sur 2 voire 3 lignes. Il y a eu une solution proposée par Jacques Menu, mais je ne suis jamais arrivé à la mettre en œuvre. J'ai alors pensé à qqchose comme

```
\version "2.24.2"
{
\override TextSpanner.bound-details.left.stencil-align-dir-y = #0
\override TextSpanner.bound-details.right.stencil-align-dir-y = #0

\override TextSpanner.bound-details.left.text = "cre"
\override TextSpanner.bound-details.right.text = "scen"
\override TextSpanner.bound-details.right.text = "do"

\relative { c'4^\startTextSpan c c c\stopTextSpan c\startTextSpan c c c\stopTextSpan c\startTextSpan c c c\stopTextSpan }
}
```
mais comme vous pourrez le constater, cela donne un texte du style cre - - do qui se répète. Est-il possible d'insérer le «scen» entre les expressions «cre» et «do» avec une incantation du style:

`\override TextSpanner.bound-details.**middle**.stencil-align-dir-y = #0`

Je sais bien que l'expression «middle» n'existe pas, du moins pas dans ce contexte, mais existe t-il autre chose?

Amitiés.

Bernard

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/ecrire-un-crescendo-etale-sur-plusieurs-mesures/5576/1).

Pour créer un nouveau sujet, écrivez à [[email-masked]](mailto:[email-masked]) ou visitez la [page d'accueil de lilypond.community](https://lilypond.community).

---

From: MartialR via LilyPond <[email-masked]>
Date: Sat, 16 Dec 2023 08:09:04 +0000

Bonjour,

un truc comme ça à bidouiller : 
[https://lsr.di.unimi.it/LSR/Snippet?id=807](https://lsr.di.unimi.it/LSR/Snippet?id=807)

```
cresend =
#(make-music 'CrescendoEvent
             'span-direction START
             'span-type 'text
             'span-text "cre - - - scen - - - do")

\relative c' {
  c4\cresend d4 e4 f4 |
  g4 a4\! b4 c4 |
}
```
Bonne journée

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/ecrire-un-crescendo-etale-sur-plusieurs-mesures/5576/2).

---

From: MartialR via LilyPond <[email-masked]>
Date: Sat, 16 Dec 2023 10:36:58 +0000

On peut  aussi faire ainsi : 
Bidouille de  [https://lsr.di.unimi.it/LSR/Snippet?id=806](https://lsr.di.unimi.it/LSR/Snippet?id=806)
```
\version "2.24.3"
crescText =
#(define-music-function (txt) (markup?)
   (make-music 'CrescendoEvent
               'span-direction START
               'span-type 'text
               'span-text txt))

\relative c' {
  c4-\crescText "cre" c4 c4 c4 |
  c4 c4 c4 c4 |
  c4-\crescText "sen" c4 c4 c4 |
  c4 c4 c4  c4-\crescText "do" 
  <>\! %LiyiPond hurle un peu mais ça passe
}
```

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/ecrire-un-crescendo-etale-sur-plusieurs-mesures/5576/3).

---

From: Jean Abou Samra via LilyPond <[email-masked]>
Date: Sat, 16 Dec 2023 20:06:31 +0000

Si vous n'avez pas peur des gros fichiers inclus, il existe https://github.com/davidnalesnik/lilypond-text-spanner-inner-texts (enregistrez `text-spanner-inner-texts.ily` à côté du `.ly` et consultez `example.ly` pour voir des exemples).

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/ecrire-un-crescendo-etale-sur-plusieurs-mesures/5576/4).

---

From: MartialR via LilyPond <[email-masked]>
Date: Sat, 16 Dec 2023 22:40:13 +0000

Beau travail de david Nalesnik ! 
Merci Jean

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/ecrire-un-crescendo-etale-sur-plusieurs-mesures/5576/5).