Sven Axelsson wrote:
OK. At least I found out what the syntax would be:

\layout {
  \context { \Score
    \override KeySignature #'print-function = ##f
    extraNatural = ##f
  }
  \context { \Staff
    keySignature = #'((0 . 2) (3 . 2))
  }
}

but, as Mats said, it doesn't work. Even the extraNatural = ##f
doesn't do anything.

It certainly does. Try the following example:
\version "2.6.0"
\layout{\context{\Score extraNatural = ##f }}

\score{
\relative c'{c cis ces c}}

> As far as I understand, the above should be
the same as putting

\override Score.KeySignature #'print-function = ##f
\set Score.extraNatural = ##f
\set Staff.keySignature = #'((0 . 2) (3 . 2))

in the score. But, no, it isn't. Anyone know why?

For the keySignature, I have already provided the explanation, namely
that the default keySignature is hard-coded into the program and cannot
be changed in the \layout{...} block. Why the program is designed that
way is a completely different question, though.

  /Mats


_______________________________________________
lilypond-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to