Excellent. That does work. Thank you.
On 9/20/2024 8:43 PM, Saul Tobin wrote:
I think you misunderstood. If you allow Score to accept NullVoice, you
don't need to explicitly instantiate a Staff, you can just do it the
way you initially wanted.
On Fri, Sep 20, 2024 at 11:01 PM Walt North <waltno...@gmail.com> wrote:
thanks. So far no luck. I'm giving up for the night. Get back
it tomorrow. Here is what I have tried so far.
\version "2.24.2"
\language "english"
\layout {
indent = 0
\context {
\NullVoice
\RemoveAllEmptyStaves
}
\context {
\Score
\accepts NullVoice
}
\context {
\Staff
\accepts NullVoice
}
}
verseLyricsMelody = \relative c' {
c4 c c c~ | c c c c |
}
verseOneLyrics = \lyricmode {
one two three four five six seven eight
}
\new Score {
\new Staff
<<
<<
\new NullVoice = "verseA" { \break \verseLyricsMelody }
\new Lyrics \lyricsto "verseA" { \verseOneLyrics }
>>
>>
}
\new Score {
\new Staff
<<
<<
\new NullVoice = "verseB" { \break \verseLyricsMelody }
>>
\new Lyrics \lyricsto "verseB" { \verseOneLyrics }
>>
}
On 9/20/2024 7:51 PM, Saul Tobin wrote:
Another way to get the extra Staff not to appear is to add the
following to your \layout block:
\context {
\Score
\accepts NullVoice
}
As an aside directed more at the dev community: is there any good
reason not to make this the default behavior (and similar for
StaffGroup, etc.)? NullVoice is defined with both Staff and Voice
as aliases. I would have assumed this meant that it could be used
anywhere that Staff could be used.
Saul
On Fri, Sep 20, 2024 at 10:25 PM Saul Tobin
<saul.james.to...@gmail.com> wrote:
The easiest way to get the staff not to appear would be to
put NullVoice inside a Staff or similar context that you want
to appear.
On Fri, Sep 20, 2024 at 8:19 PM Walt North
<waltno...@gmail.com> wrote:
Thanks, that took care of the alignment.
However now I see an empty staff. Is it expected I would
then have to remove all empty staves? I tried that but
may not have it right
\version "2.24.2"
\language "english"
\layout {
indent = 0
\context {
\NullVoice
\RemoveAllEmptyStaves
}
}
verseLyricsMelody = \relative c' {
c4 c c c~ | c c c c |
}
verseOneLyrics = \lyricmode {
one two three four five six seven eight
}
\new Score {
<<
\new Voice = "verse" { \break \verseLyricsMelody }
\new Lyrics \lyricsto "verse" { \verseOneLyrics }
>>
<<
\new NullVoice = "verseB" { \break \verseLyricsMelody }
\new Lyrics \lyricsto "verseB" { \verseOneLyrics }
>>
}
On 9/20/2024 4:58 PM, Saul Tobin wrote:
My understanding is that Devnull is not intended for
alignment of lyrics because it does not have the
necessary engraver to create the invisible grobs used
for alignment. It appears to me in your example that
actually the lyrics are just being spaced evenly without
alignment to anything. Nullvoice is intended for your
use case.
On Fri, Sep 20, 2024, 6:06 PM Walt North
<waltno...@gmail.com> wrote:
Am I missing something? It seems like using devnull
to align lyrics to does pay attention to ties. Ties
do seem to be honored when using voice for alignment.
Below is a stripped down example with screenshot.
\version "2.24.2"
\language "english"
\layout {
indent = 0
}
verseLyricsMelody = \relative c' {
c4 c c c~ | c c c c |
}
verseOneLyrics = \lyricmode {
one two three four five six seven eight
}
\new Score {
<<
\new Voice = "verse" { \break \verseLyricsMelody }
\new Lyrics \lyricsto "verse" { \verseOneLyrics }
>>
<<
\new Devnull = "verseB" { \break
\verseLyricsMelody }
\new Lyrics \lyricsto "verseB" { \verseOneLyrics }
>>
}