[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Another Lyrics spacing issue.
From: |
Thomas Morley |
Subject: |
Re: Another Lyrics spacing issue. |
Date: |
Fri, 18 Mar 2016 22:44:22 +0100 |
2016-03-18 4:57 GMT+01:00 Hwaen Ch'uqi <address@hidden>:
> Greetings,
>
> Yes, this is perfect! I am sheepish to admit that I do not quite
> understand the solution. For example, if I were to leave out the first
> measure in the code I submitted and then compiled, there appears a
> large gap between the penultimate and the final word of the spoken
> dialogue? Could you enlighten me as to this? Thank you again for your
> solution!
>
> Hwaen Ch'uqi
I can't reproduce the problem with the gap, could you post the code?
For the other things:
There are two problems:
--------------------
(1) Creating new contexts vs continuing them.
--------------------
Your code created two _new_ Lyric-contexts. LilyPond sorts newly
created contexts below the already existing ones, so the Lyrics were
note aligned.
Regard this small example:
<<
\new Voice = "one"
{
c''1
<<
r1
\new Lyrics = "lyr2"
\with { \override LyricText.color = #red }
\lyricmode { barbarbarbarbar }
>>
d''
}
\new Lyrics = "lyr1"
\lyricsto "one" { foo buzz }
>>
\new Lyrics = "lyr2" is _not_ a continuation of \new Lyrics = "lyr1"
(and thus the context-modification via \with { ... } works)
Naming them "lyr1/2" is only for better understanding, you can delete
the names, without changing what works or not.
Compare with:
<<
\new Voice = "one"
{
c''1
<<
r1
\context Lyrics = "lyr1"
\with { \override LyricText.color = #red }
\lyricmode { barbarbarbarbar }
>>
d''
}
\new Lyrics = "lyr1"
\lyricsto "one" { foo buzz }
>>
\context Lyrics = "lyr1" _is_ a continuation of \new Lyrics = "lyr1"
and the lyrics _are_ aligned.
You can delete the naming as well, but _if_ you use names they should
be the same!
n.b. the context-modification via does _not_ work!!
--------------------
(2) context-modifications
If you continue a context via \context you obviously can't use \with {
... } to insert there context-modifications like overrides.
You need to do \override and \revert in the music-expression.
<<
\new Voice = "one"
{
c''1
<<
r1
\context Lyrics = "lyr"
%% doesn't work:
\with { \override LyricText.color = #red }
\lyricmode {
\override LyricText.self-alignment-X = #LEFT
barbarbarbarbar
\revert LyricText.self-alignment-X
}
>>
d''
}
\new Lyrics = "lyr"
%% works:
\with { \override LyricText.color = #cyan }
\lyricsto "one" { foo buzz }
>>
Hope that helps a bit,
Harm