Gabriel Ellsworth <[email protected]> writes:

But … You could prepare your new snippet, and ask on the -user list to see if there's a consensus that your snippet should replace the existing snippet. … as Carl suggests here, getting input from this user list before adding a snippet to the Wiki is often a good idea. I have done so myself. In case this is helpful inspiration … here is an example of a Wiki page that intentionally shows multiple ways of doing the same basic thing all within a single page/snippet: Typesetting IPA transcriptions for lyrics - LilyPond wiki.

Thanks! I think in my case the snippet that's already there shouldn't be replaced, but kept. Mine was better for my purpose today, but I wouldn't claim it was objectively better, or better for everyone.

_______

[https://wiki.lilypond.community/wiki/Chord_names_and_lyrics_without_a_staff] shows how to use <code>\Devnull</code> to eliminate the melody from a lead sheet, to print only the chord symbols and the lyrics. In some cases, <code>\Devnull</code> gives unwanted or unexpected results, particularly with tied notes. This second approach to showing chord names and lyrics without a staff, thanks to [https://lists.nongnu.org/archive/html/lilypond-user/2024-09/msg00206.html Saul Tobin's post on lilypond-user], is very similar to the existing solution, but avoids the use of <code>\Devnull</code> by modifying the <code>\Score</code> and <code>\Staff</code> to accept a <code>NullVoice</code> directly. It also eliminates the need for modifications to <code>VerticalAxisGroup.staff-affinity</code> and <code>LyricText.self-alignment-X</code>. In this approach, the horizontal spacing of the lyrics and their alignment with the chord names is much closer to the way they would be with the real melody, including Lilypond's usual way of matching lyrics to tied notes and melismas. (A grossly exaggerated set of tied notes in the third bar shows the effect.) This makes it practical to reuse (without modifications) the lyrics from a lead sheet with melody when producing a "chord names and lyrics only" version. The resulting "musically literal" lyric spacing could be a disadvantage in some cases.


\version "2.24"

text = \lyricmode { Ho ho, ho ho ho. Hey hey. Ha ha, ha. }

nullMelody = \relative c'' {
 e4 e e2
 e2 e
 r8 e8~ e~ e~ e e~ e~ e
 \tuplet 3/2 { d2 c d }
 }

harmonies = \chordmode { a1:m | d:m | e:7 | a:m | }

\layout {
 \context {
   \Score
   \accepts NullVoice
 }

 \context {
   \Staff
   \accepts NullVoice
 }

 \context {
   \NullVoice
   \RemoveAllEmptyStaves
 }
}

\score {
 <<
   \new ChordNames
     \harmonies

   \new NullVoice = "vocal"
     \nullMelody

   \new Lyrics
     \lyricsto "vocal" \text
  >>
\layout { }
}


--
David

Reply via email to