[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Unpredictable insertions of superfluous extra space between lines of
From: |
Jean Abou Samra |
Subject: |
Re: Unpredictable insertions of superfluous extra space between lines of lyrics |
Date: |
Tue, 02 May 2023 02:29:23 +0200 |
User-agent: |
Evolution 3.48.1 (3.48.1-1.fc38) |
Le lundi 01 mai 2023 à 20:19 -0400, Connor Harris a écrit :
> I've discovered a bizarre bug (originally in LilyPond 2.22.1, confirmed in
> all versions up through 2.23.13 with reason to suspect that the underlying
> issue may still exist in later versions) with vertical spacing of lyrics.
> Under very specific, seemingly unpredictable conditions, LilyPond inserts
> several lines of extra space between two lines of lyrics attached to the
> same staff. See the below example, which (for reasons I'll discuss later)
> is about as minimal as I can get it. It's edited down from an engraving of
> the German folk song "Hoch auf dem gelben Wagen" that I was working on when
> I discovered it:
>
> ```
> \version "2.22.1"
>
> #(set-global-staff-size 18)
>
> music = \relative c' {
> \key f \major
> \time 4/4
> c4 f8 g a4 c | a4( g) f r |
> c4 f8 g a4 g | f2. r4 |
> c4 f8 g a4 c8 c | \break a4( g) f4 r4
> }
>
> verseOne = \lyricmode {
> Hoch auf dem gel -- ben Wa -- gen
> sitz’ ich beim Schwa -- ger vorn.
> Vor -- wärts die Ros -- se _ tra -- ben;
> }
>
> verseTwo = \lyricmode {
> Po -- stil -- lion an der Schen -- ke
> füt -- tert die Ros -- se~im Flug.
> Schäu -- men -- de Ger -- sten -- ge -- trän -- ke
> }
>
> \score {
> \new Staff { \music }
> \addlyrics {\verseOne}
> \addlyrics {\verseTwo}
> }
> ```
>
> What makes this bug bizarre, and why this example had to be so long, is
> that any number of tweaks, some of them only affecting a single note or
> character in the lyrics, will eliminate the excessive vertical spacing (but
> seemingly similar-looking tweaks won't). For instance, these changes fix
> the lyrics spacing:
>
> - Eliminating the forced break after measure 5. (This is where a line break
> naturally fell in my first engraving of the whole song, and why I
> discovered the bug in the first place.)
> - Adding another forced break anywhere before bar 5.
> - Changing the time signature to 2/4, leaving the note durations unchanged.
> - Changing the H in "Hoch", or the S in "Schenke" and "Schäumende", to
> lowercase (but not the P in "Postillion" or the W in "Wagen").
> - Changing the elision in "Ros -- se~im" to one word: "Ros -- seim"
> - Eliminating the curved apostrophe after "sitz"
> - Changing the g in "gelben" to uppercase (but not the first letters of
> several other lowercase words, such as "füttert"
> - Changing "dem", the third word in the first verse, to "den"
> - Changing the last note of the first measure (C5) to anything on or below
> the third line (that is, B4 or below). Raising instead of lowering that
> note leaves the space unaffected, as does changing other notes: for
> instance, changing that C5 to D5, or changing the preceding A4 to G4, leave
> the extra space unaffected
>
> I've tried to replicate this bug with several LilyPond versions and
> produced it in all versions up to 2.23.13; it doesn't seem to affect
> 2.23.14 and beyond. I considered it worth reporting nevertheless, because
> it seems so exquisitely context-dependent that even if my example doesn't
> exhibit it in later LilyPond versions, this may be due to other changes in
> LilyPond internals, not because the underlying problem in lyric spacing has
> been fixed.
>
> One final comment: I initially discovered this bug with three lines of
> lyrics, and it only affected the spacing between the second and the third;
> the first and second lines were spaced as they should be.
>
Thank you for the detailed and informative bug report.
The problem looks a lot like [issue
#6432](https://gitlab.com/lilypond/lilypond/-/issues/6432) to me. It has
therefore been fixed (didn't just disappear by accident) in version 2.23.14.
Best,
Jean
signature.asc
Description: This is a digitally signed message part