On Mon, 02 Dec 2013 22:56:49 -0800, Kieren MacMillan
<kieren_macmil...@sympatico.ca> wrote:
Instead of specifying an offset from a rehearsal mark, maybe simpler to
have an independent type of marker to put in the \global stream. Then
the entries of the parts are visible all at once in \global
global = { R1*32 \mark"A" R1*30 \marker"vln34" R1*18 \mark"B" }
In what way does \pushToTag not do this already?
It took a while to figure out the documentation, but maybe \pushToTag would work. It seems
that, instead of each instrument part being put in a <<parallel>> construct
with global sequence containing the timing and marks (which I always call \conductor) the
instrument part is a *copy* of \conductor, into which we *push* the music for that
instrument at the appropriate places.
So far I've seen just two problems.
The tag, at the place where we want a section of music from some instrument,
needs to mark a parallel music construction that is at least as long as the
music to be added. (Otherwise the result of \pushToTag is longer than the
\conductor part, ruining the synchronization) When the instruments enter
simultaneously, the structure is simple. But if they come in at overlapping
times, I seem to need a nested parallel/sequential construction in order to
give each part a parallel-music construction of sufficient length. If there
are a few parts using this mechanism, it will get a bit complicated.
I do not see a way to get the multimeasure rests into the parts. There are no
skips of the proper length in the result of \pushToTag; instead the music is in
parallel with longer, overlapping, skips.
But, I can change the length of skips in \conductor and the music moves to
different bars as desired. I will not be pursuing this technique, unless there
is a way to avoid the confusing parallel music constructions.
\version "2.16.1" % Intro to Dvorak opus 95, HornII and Timpani only
conductor = \relative c {
\set Score.markFormatter = #format-mark-box-barnumbers
\time 4/4
\tag #'score \tempo "Adagio" 4 = 63
s1*9
\tag #'tp1 \tag #'hn1 << s1*9 >>
\tag #'hn2 << { s1*2
\tag #'tp2 << s1*3 >> } >>
\mark\default
\bar"||"
\time 2/4
\tag#'score \tempo "Allegro Molto" 4 = 136
s2*15
\mark\default
}
hornII = \new Voice <<
\compressFullBarRests
R1^\markup"in E"
\transposition e
\pushToTag #'hn1 \relative c'' {
r8.. d32\ff d2 r4 |
r8.. d32 d2 r4 |
r8.. d32 d8. r16 r8.. d32 d8. r16 |
}
\pushToTag #'hn2 \relative c'' {
d,16\f r8. r4 d16 r8. r4 |
d16 r8. r4 d16 r8. r4 |
c16 r8. r4 r4 r16 c'-. c-. c-. |
c16 r8. b16 r8. r2 |
} \conductor >>
timpani = {
\clef bass
\compressFullBarRests
\pushToTag #'tp1 {
r16 a32\< a a16\ff r16 r4 r2 |
r16 a32\< a a16\sfz r16 r4 r2 |
r16 a32 a a16 r16 r4 r16 a32 a a16 r16 r4
}
\pushToTag #'tp2 \relative c {
r8 e16\mf\< e e e e e e2*7/8\startTrillSpan s16\stopTrillSpan
r8\! e\sfz r b\sfz\> b2\startTrillSpan
b4\stopTrillSpan\p r r2
} \conductor }
\score { <<
\new Staff \hornII
\new Staff \timpani >> }
\timpani
\hornII
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user