Subject: Bug d'extension de syllabe

From: Olivier Miakinen <[email-masked]>
Date: Sun, 26 Sep 2021 00:25:33 +0200

Bonjour,

J'ai un bug avec le code suivant :
=============================================================
\version "2.20.0"

soprano = \relative c'' {
  g2~ g4~ g8 r | r2 a2 |
  \bar "||"
  g2~ g4~ g8 r | r2 \grace b8 a2 |
}

\score {
  <<
    \new Staff { \soprano }
    \addlyrics { Ah __ Oh Ah __ Oh }
}
=============================================================

L'extension de syllabe (avec __), qui s'arrête bien au g8 quand
il n'y a pas de grace note, se prolonge sur les silences quand il
y a une grace note qui les suit.

Quelques précisions :
- c'est pareil avec \slashedGrace au lieu de \grace ;
- j'ai le bug en 2.20.0 et 2.19.83 sur Linux Mint ;
- lilybin.com n'a pas le bug en 2.18.2 ni en 2.19.48.

Si nécessaire je peux fournir un PDF du résultat.

Cordialement,
-- 
Olivier Miakinen

---

From: Olivier Miakinen <[email-masked]>
Date: Tue, 28 Sep 2021 12:38:25 +0200

Bonjour,

> J'ai un bug avec le code suivant :

Est-ce que quelqu'un aurait des infos ?

Par exemple, est-ce que ce bug existe aussi chez d'autres avec
LilyPond 2.20 ? Est-ce qu'il est toujours présent en 2.22 ou
2.23 ?

Aussi : une idée de contournement ?

Cordialement,
-- 
Olivier Miakinen

---

From: Vincent Gay <[email-masked]>
Date: Tue, 28 Sep 2021 13:53:23 +0200

>      \addlyrics { Ah __ Oh Ah __ Oh }

Testé en 2.22.1, le bug est toujours là

-- 
Vincent Gay
Envoyé depuis mon saxo-phone :)
https://myrealbook.vintherine.org/ - http://photos.vintherine.org/

---

From: Martial R <[email-masked]>
Date: Tue, 28 Sep 2021 14:38:31 +0200

Bonjour
avec version 2.23.2
même punition pour l'extension de syllabes   !
BUG !

-- 
Martial

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 28 Sep 2021 20:00:31 +0200

Bonjour,

C'est effectivement un bug, merci de l'avoir signalé.
Je viens de l'ajouter sur GitLab :

https://gitlab.com/lilypond/lilypond/-/issues/6183

On peut le contourner avec la propriété extendersOverRests,
comme ceci :

\version "2.22.1"

\relative c' {
   c2 r2 | R1 | c1
   c2 r2 | R1 | \grace c8 c1
}
\addlyrics {
   Ah __ Oh
   \set extendersOverRests = ##f
   Ah __ Oh
}

Cordialement,
Jean

---

From: Olivier Miakinen <[email-masked]>
Date: Tue, 28 Sep 2021 22:37:05 +0200

> https://gitlab.com/lilypond/lilypond/-/issues/6183

Merci à toi, et merci aussi à Vincent et Martial pour leur essai.

>    \set extendersOverRests = ##f

Génial ! Sauf que... dans ma partition complète j'ai maintenant le
bug inverse, à savoir que l'extension ne va pas toujours à la dernière
note. Il va falloir que je refasse un exemple minimal qui le montre.

-- 
Olivier Miakinen

---

From: Martial R <[email-masked]>
Date: Wed, 29 Sep 2021 07:18:05 +0200

Bonjour

juste mettre : \unset extendersOverRests  après en attendant la correction
du bug.

-- 
Martial

---

From: Olivier Miakinen <[email-masked]>
Date: Wed, 29 Sep 2021 11:43:49 +0200

Bonjour,

> juste mettre : \unset extendersOverRests  après en attendant la correction

Sauf que... le deuxième bug est sur la *même* extension, et je ne peux
pas à la fois lui mettre et lui retirer extendersOverRests.

Voici un nouvel exemple, aussi minimal que possible.

=============================================
\version "2.20.0"

<<
\relative c' {
   c4 c c c | R1 | R1
   c4 c c c | R1 | R1
   c4 c c c | R1 | R1
}
\relative c' {
   c2~ c2 | R1 | c1
   c2~ c2 | R1 | \grace c8 c1
   c2~ c2 | R1 | \grace c8 c1
}
\addlyrics {
   Ah __ Oh
   Ah __ Oh
   \set extendersOverRests = ##f
   Ah __ Oh
} >>
=============================================

Et cette fois je joins une copie d'écran du résultat. La deuxième
extension est trop longue mais la troisième est trop courte.

Cordialement,
-- 
Olivier Miakinen

---

From: Martial R <[email-masked]>
Date: Wed, 29 Sep 2021 19:14:41 +0200

Testez ceci :
%===========================================
%\version "2.23.2"
\version "2.20.0"

<<
\relative c' {
   c4 c c c | R1 | R1
   c4 c c c | R1 | R1
   c4 c c c | R1 | R1
}
\relative c' {
   c2~ c2 | R1 | c1
   c2~ c2 | R1 | \grace c8 c1
   c2~ c2 | R1 | \grace c8 c1
}
\addlyrics {
  %
  \override LyricExtender #'minimum-length = #5
   Ah __ Oh
   \set extendersOverRests = ##f
   Ah __ Oh
   Ah __ Oh
} >>
%=============================================

-- 
Martial Rameaux