[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to slur into a split voice past a volta repeat
From: |
Thomas Morley |
Subject: |
Re: How to slur into a split voice past a volta repeat |
Date: |
Fri, 6 Mar 2015 21:53:49 +0100 |
2015-03-06 21:03 GMT+01:00 H. S. Teoh <address@hidden>:
> I ran into a rather complicated typesetting problem in one of my piano
> pieces. Conceptually, the music goes like this:
>
> g8( fis | << g2)
> \\ r4 <ees bes g>16 ... % and so on
> >>
>
> The slur needs to cross into the first split voice inside the <<...>>,
> but I can't find any sane way in lilypond to do this. From what I read
> online and in the docs, there is no way to slur something across a voice
> boundary. So I settled on this compromise solution:
>
> << { g8( fis | g2) ... }
> \\ { s4 | r4 <ees bes g>16 ... }
> >>
>
> So far so good... except that the barline there actually needs to be the
> boundary of a volta repeat. This is where it completely breaks down.
> Conceptually, it should look something like this:
>
> g8( fis |
> \repeat volta 2 {
> << g2) ...
> \\ r4 <ees bes g>16 ...
> >>
>
> ...
> }
>
> but obviously, there is no sane way to do this in lilypond. Or is
> there?? The slur now needs to cross not only a split voice, but also a
> volta boundary. If I attempt to run lilypond on the above code, it
> produces a big mess in the output, because the outer '(' joins up with a
> wrong ')' many bars into the music -- since lilypond doesn't recognize
> that the matching ')' is actually inside the split voice -- and produces
> a long slur that slashes across the notes in the split voices. Total
> disaster.
>
> Is there any way to remedy this? Or, barring that, is there a way to
> suppress the displaying of the volta repeat (e.g. move the g8 fis figure
> inside the repeat and put alternatives at the end to line things up) and
> manually place the repeat marks where they conceptually lie?
>
>
> T
>
> --
> "Real programmers can write assembly code in any language. :-)" -- Larry Wall
>
> _______________________________________________
> lilypond-user mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/lilypond-user
Please (re-)read and _follow_
http://www.lilypond.org/website/tiny-examples.html
\new Voice = "me"
\relative c'' {
f1(
\repeat volta 2 {
<<
\context Voice = "me" { \voiceOne g1) }
\\
{ b,2. }
>>
c1
}
}
-Harm