[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Removing a time signature only once
From: |
james |
Subject: |
Re: Removing a time signature only once |
Date: |
Tue, 15 Jan 2013 22:27:55 +0100 |
On Jan 15, 2013, at 10:18 PM, Christopher R. Maden wrote:
> On 01/15/2013 04:05 PM, Kieren MacMillan wrote:
>> You need to specify the context:
>
> OK... a more complete example is attached.
>
> The time signature is invoked in songGlobalsVerse.
>
> That’s used in a Staff:
>
> songVocals = \new Staff <<
> \clef treble
> <<
> {
> \songGlobalsIntro
> \repeat volta 6 {
> \songGlobalsVerse
> \songGlobalsChorus
> }
> }
> \new Voice = "vocal" {
> \songTacetIntro
> \repeat volta 6 {
> \songMelodyVerse
> \songMelodyChorus
> }
> }
>>>
>>>
>
> That is, in turn, used in both a layout and a midi context:
>
> \score {
> <<
> \songVocals
>>>
> \layout {}
> }
>
> The time signature is displayed.
>
> ~Chris
As previously noted in kieren's email, you need to add "Staff." before
TimeSignature #'stencil = ##f in order to specify the context that you want the
override to take place in. In the Internals reference, you can see that the
TimeSignature engraver lives in the Staff context, and as explained in the
learning manual section 4.3.1 (using barlines instead of time signatures, but
exactly the same situation) when you want to override the visibility of
something, you have to tell lilypond which context it's in, if it's not the
implicit Voice context.