lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Timing_engraver and \remove - \consists in general


From: William R Brohinsky
Subject: Timing_engraver and \remove - \consists in general
Date: Sat, 31 Aug 2002 22:15:54 -0400

Heyla!

I'm still struggling with some apparently fundamental, basic concepts.

The internals for Timing_engraver says that "In order to create
polyrhythmic music, this engraver should be removed from Score and
placed in Staff."

After considerable searching about the tutorial, manual, internals docs,
regression tests and 'test' dir in Doc/lilypond-etc, I decided this
probably meant that I needed to have \translators in the \paper{}
section, one of which removed Timing_engraver from \ScoreContext, and
another that consist-s it into \StaffContext. Hoping and praying that
this might work, I tried this (with a lot of unnecessary stuff
excluded):

cantus=\notes\relative g' {
        \key g \dorian
        \time 2/2
        [note list with barchecks on whole-note boundaries]
}

tenor=\notes\relative c' {
        \key g \dorian
        \time 3/1
        [note list with barchecks on dotted-breve boundaries]
}

bassus=\notes\relative c {
        \key g \minor %ok, it's really not, but it gets 2 flats
        \time 2/2
        [notes list, like cantus, on wholenote boundaries]
}

\score
{
        \context ChoirStaff <
                \context Staff="cantus" <
                        \notes{\clef "G2"}
                        \cantus
                >
                \context Staff="tenor" <
                        \notes{\clef "G2_8")
                        \tenor
                >
                \context Staff="bassus" <
                        \notes{\clef "F"}
                        \bassus
                >

\paper{
        \translator{ \ThreadContext
                        \remove "Note_heads_engraver"
                        \consists "Completion_heads_engraver"
                        }
        \translator( \ScoreContext
                        \remove "Timing_engraver" }
        \translator{ \StaffContext
                        \consists "Timing_engraver"}
        }

The layout may seem a bit overcomplicated, but in actuality, lends
itself well to a project involving 96 pieces in 3, 4 or 5 parts which
have all sorts of individual needs, with an eventual hope of printing
scores and parts in modern, original, and possibly even ancient
clef/notation formats.

OK. The output from Lilypond 1.6.0 is beautiful, no question. But all
three parts have C for a time signature (if I comment out the
ScoreContext and StaffContext \translator blocks, it is C-slash for all
three parts) and all three parts are barred appropriately for C (or
C-slash). The tenor part's 3/1 is utterly ignored (and 6/2 is also if I
substitute that). 

My questions: 
1) The internals and manual and tutorial make it appear that the only
place that \translators are used to \remove or \consist engravers is in
the \paper() block. Is this so? Should I be making an individual
\translator block for each voice within it's \notes() block to \consists
"Timing_engraver"?
2) the documentation really doesn't give any help to the novice (which I
am still and may be forever) about syntax where \remove and \consists
are concerned: are the engravers enclosed in quote marks, properly?
3) Is there some other approach I should be taking, like setting the
barNonAuto property, and then manually \bar | where they should fall? If
I do this and use the Completion_heads_engraver, will a dotted
whole-note be drawn as a whole-note with a tied halfnote of the same
pitch, or as a dotted whole? Can I control Completion_heads_engraver on
a line-by-line basis?
4) What other questions should I be asking, but haven't the brains to
think of? 8^)

raybro




reply via email to

[Prev in Thread] Current Thread [Next in Thread]