On Aug 15, 2012, at 12:18 PM, james wrote: > > On Aug 15, 2012, at 9:54 AM, David Kastrup wrote: > >> Keith OHara <[email protected]> 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. _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
