Hi Werner (et al.),
> This is ingenious :-) Thanks *a lot* for this solution.
+1 (x2)
> * I *strongly* vote for polishing and documenting this so that it can
> be added to LilyPond. It's an invaluable feature IMHO, greatly
> enhancing Lyrics.
YES PLEASE!!
If anyone is interested in discussing one potentially related request — also
having to do with spacing — I'd appreciate it. It may not have any impact on
this solution, but my instinct is it might, so I wanted to throw it out there.
Consider the following snippet:
%%% SNIPPET BEGINS
\version "2.23.4"
\layout {
indent = 0
}
music = {
\tuplet 3/2 { c'8 8 8 }
}
words = \lyricmode {
\tag #'fix { \once \override LyricText.self-alignment-X = #0.25 } Loooooong!
Not long.
}
\score {
<<
\new Staff \music
\addlyrics \words
>>
\layout {
ragged-right = ##f
line-width = 2.5\in
}
}
\score {
<<
\new Staff \removeWithTag #'fix { \music }
\addlyrics \words
>>
}
\score {
<<
\new Staff \keepWithTag #'fix { \music }
\addlyrics \words
>>
\layout {
ragged-right = ##f
line-width = 2\in
}
}
%%% SNIPPET ENDS
A *large* percentage of my tweaking time is spent adjusting the alignment of
lyrics so that the note spacing is as natural as possible: aligning the first
syllable of a triplet more to the right and the last syllable more to the left,
etc. I would love to be able to identify a block of notes (anything from a pair
to a whole measure or more!) so that the spacing engine would privilege the
note spacing in that group over the spacing of the lyrics under it, compressing
or expanding LyricWords [hence the intersection with this feature!], changing
self-alignment-X or X-offset, etc., in order to keep the notes the most natural.
Janek started to work on this as part of the GSoC Lyric work (10 years ago,
maybe?!?!), but never finished. It's obviously a non-trivial feature to
implement… but I wanted to bring it up just in case the potential
implementation of it in the future might change the way that LyricWord is
implemented right now.
Thoughts?
Kieren