[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: crossStaff with tieWaitForNote
From: |
David Kastrup |
Subject: |
Re: crossStaff with tieWaitForNote |
Date: |
Fri, 14 Jun 2013 23:15:16 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
Kieren MacMillan <address@hidden> writes:
> Hi Harm
>
>> I tried a simplified example. Though, I can make it work either for
>> the Ties _or_ for the Beam.
>> Seems that the notes have to be in the _same_ Voice for the Beam.
>> But for the Ties with a cross-staff chord in _different_ Voices.
>>
>> I've no idea how to solve that quandary.
>
> Thanks for trying… =(
How about this one? It's sort of fishy but seemingly does the trick in
this simple case.
\version "2.17"
\language "english"
\layout {
\context {
\PianoStaff
\consists #Span_stem_engraver
tieWaitForNote = ##t
}
\context {
\Staff
\denies Voice
\accepts TieVoice
\defaultchild TieVoice
}
\context {
\Voice
\remove Tie_engraver
}
\context {
\name "TieVoice"
\type "Engraver_group"
\consists Tie_engraver
\accepts Voice
\defaultchild Voice
}
}
upper_notes = \relative d'' {
<<
{ \voiceOne r8 <d e>8[-. a'-. e']-. a2-. }
\new TieVoice = "piano_upper" { \voiceTwo s8 \crossStaff { <b,,, c e fs
b>2.. } }
>>
}
lower_notes = \relative d, {
\clef bass
\new TieVoice = "piano_lower" \new Voice {
\tuplet 7/4 { \stemUp d32[ ~ a' ~ fs' ~ \change TieVoice = "piano_upper"
\voiceTwo <b c> ~ e ~ fs ~ b] ~ }
\change TieVoice = "piano_lower" \oneVoice <d,,, a' fs'>2.. }
}
\score {
\new PianoStaff <<
\new Staff \upper_notes
\new Staff \lower_notes
>>
}
--
David Kastrup