lilypond-user
[Top][All Lists]
Advanced

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

Re: clef change confuses manual key signature


From: james
Subject: Re: clef change confuses manual key signature
Date: Wed, 15 Aug 2012 12:21:45 +0200

On Aug 15, 2012, at 12:18 PM, james wrote:

> 
> On Aug 15, 2012, at 9:54 AM, David Kastrup wrote:
> 
>> Keith OHara <address@hidden> writes:
>> 
>>> David Kastrup <dak <at> gnu.org> writes:
>>> 
>>>> That image does not make sense to me at all.  Notes appear in key 
>>>> signature (though in a different octave) and still carry an accidental. 
>>>> How do you distinguish a normal key signature (valid across all octaves) 
>>>> from a restricted-octave one (valid only in one octave)?  They look the 
>>>> same.
>>> 
>>> Lilypond docs do not seem to explain any way to print the key signature
>>> accidentals on different lines than standard, except for this crazy method
>>> where the alterations count for just one octave.
>>> 
>>> <speculation>
>>> There was no way to alter the printing of the key signature, 
>>> someone needed to do so, found the data structure for the local key 
>>> signature that tracks transient accidentals, including octave, used
>>> that as a way to serve his need, and posted to the snippets list.
>>> <end speculation>
>> 
>> And composers all over the land adopted "this notation".  Sounds like a
>> Microsoft success story.
>> 
>>> It would be better to use standard key signatures with custom scales
>>> wholetone = #`((0 . ,NATURAL) (1 . ,NATURAL) (2 . ,NATURAL)
>>>     (3 . ,SHARP) (-3 . ,NATURAL) (-2 . ,FLAT) (-1 . ,FLAT) )
>>> { \key d\wholetone  bes1 }
>>> and adapt the print routine
>>> key-signature-interface::alteration-position
>>> to allow for more flexible printing.
>> 
>> No idea.  At any rate, I am going for the "valid in all octaves even if
>> octave is given" angle.  Of course that is incompatible with current
>> behavior, but current behavior is incompatible with common sense or
>> logic.  It is not even possible to guess the pitches one is supposed to
>> play.
> 
> Honestly, I don't know what the original intent of lilypond's behavior was 
> supposed to be. It wasn't very consistent. If the goal is, now that this 
> isn't working, to change this behavior, I think that's a wonderful idea, and 
> here is a test case that shows some of the problems of the previous behavior.
> \include "deutsch.ly"
> \version "2.12.3"
> \score {
>       <<
>               \new Staff <<
>                       \relative c'{
>                               \set Staff.keySignature = #`(((0 . 2) . ,FLAT))
>                               %% note e-flat in this octave %%
>                               c8 d es f g a h c
>                               %% and e-natural in this octave %%
>                               c d e f g a h c
>                               c h a g f e d c c h a g f es d c
>                       }
>               >>
>               \new Staff <<
>                       \relative c, {
>                               %% why is this f-natural and g-natural? %%
>                               a8 h c d e f g a a h c d e f g a
>                               %% here, it kind of makes sense that it's 
> f-natural g-natural
>                               a'' g f e d c h a
>                               %% and here, that it should be g-sharp and 
> f-sharp
>                               a gis fis e d c h a
>                       }
>                       {       %%      Key Signatures
>                               \clef bass
>                               \set Staff.keySignature = #`(((-1 . -3) . 
> ,SHARP) ((-1 . -4) . ,SHARP))
>                               s1*2
>                               \clef treble
>                               \set Staff.printKeyCancellation = ##f
>                               \set Staff.keySignature = #`(((0 . 4) . ,SHARP) 
> ((0 . 3) . ,SHARP))
>                       }
>               >>
>       >>
> }
> 
> \score {
>       <<
>               \new Staff << 
>                       \relative c'{
>                               \set Staff.keySignature = #`((9 . ,FLAT))
>                               %% here, the key signature is persistant across 
> all octaves %%
>                               c8 d es f g a h c c d es f g a h c c h a g f es 
> d c c h a g f es d c
>                       }
>               >>
>               \new Staff <<
>                       \relative c, {
>                               %% here, the key signature is persistant across 
> all octaves %%
>                               a8 h c d e fis gis a a h c d e fis gis a a'' 
> gis fis e d c h a a gis fis e d c h a
>                       }
>                       {       %%      Key Signatures
>                               \clef bass
>                               \set Staff.keySignature = #`((4 . ,SHARP) (3 . 
> ,SHARP))
>                               s1*2
>                               \clef treble
>                               \set Staff.printKeyCancellation = ##f
>                               \set Staff.keySignature = #`((4 . ,SHARP) (3 . 
> ,SHARP))
>                       }
>               >>
>       >>
> }

I would find it a perfectly acceptable solution to have key signatures be 
consistent for all octaves, regardless with display method is chosen (i.e., 
with an octave specific key signature or an all-octave key signature), that 
would make sense to me, and make my life a lot easier.





reply via email to

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