Hi all,

Some time ago, there was a brief discussion about how great it would be if 
Lilypond had a springs-and-rods type mechanism for lyrics and notes which 
encouraged a more even note spacing in spite of the differences in the width of 
the associated lyrics.

Since it will likely be a long time before such a thing is ever implemented, 
I'm hoping to build a stop-gap function that I can apply manually to short 
sections of my scores to solve "local" spacing problems.

Consider the following snippet in which, as one possible example of how it 
might be done naïvely, I've used NoteHead.extra-spacing-width to force the 
notes apart to the point where they are essentially equally spaced (as desired):


%%%  SNIPPET BEGINS
\version "2.19.62"

theNotes = { c''16 16 16 16 }

theWords = \lyricmode {
  Longggggg. Not. Not looooooong.
}

\score {
  <<
    \new Staff \theNotes
    \addlyrics \theWords
  >>
}

\score {
  <<
    \new Staff \theNotes
    \addlyrics \theWords
  >>
  \layout {
    \context {
      \Score
      \override NoteHead.extra-spacing-width = #'(-3.5 . 3.5)
    }
  }
}
%%%  SNIPPET ENDS

Questions:

1. There are literally dozens of ways this particular issue could be tackled. 
Is there any reason to believe one of them is clearly superior? If so, which 
might that be?

2. I'm hoping to avoid trial-and-error tweaks, while still making pretty fine 
adjustments like those needed to solve the spacing issues in the following 
screenshot:



It would be fairly easy [manually] to find 'air' in the first measure and 'pump 
it into' the second measure in order to solve the irregular spacing of m 20 
beats 1-2. Could a function/callback be created that I could apply to the 
entire system (or even just those two beats) that would make the appropriate 
adjustments automagically?

Thanks,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info <http://www.kierenmacmillan.info/>
‣ email: [email protected] <mailto:[email protected]>
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to