Dear Jean, I have just had time to make that change (of key to key-signature). However, there is still an issue. For example, in change from g major to g minor, we go from one sharp to two flats. As I have a key signature in the middle of a bar (after a “Fine”), my current bar looks like this: g4^\markup \fontsize #2 \italic "Fin" \bar "||" \set Staff.forceClef = ##t \key g \minor d8 | However, what happens is that the natural sign is printed on top of the double bar line. So either I need to not print the natural (which would be my preference), or somehow push the entire new key signature (one natural and two flats) after the clef sign. Note that I’m not interested in modern best practice, but I want to (with modern music printing) maintain the spirit of the 18th century manuscript. Thank you again, Alasdair Sent from Mail for Windows From: Jean Abou Samra Le 27/02/2022 à 08:09, Alasdair McAndrew a écrit : > In my current project, I'm trying as far as possible to replicate the > spirit of the original 18th century publication, in which a key change > has a clef printed, and both after the bar line. In one piece, > there's a segno in the middle of a bar, with such a key change. In > standard Lilypond, this micro-example shows that the printed clef > comes before the bar line (I've left out the segno marker and all > other markers outside the score): > > global = { > \language english > > \clef treble > \time 4/4 > } > > \relative c' {\key c \major c4 d e fs | g a \bar "||" \set > Staff.forceClef = ##t \key c \minor bf c | bf af g f | ef d c2 } > > > But modern practice is to put the clef before the double bar, and the > key change afterwards. I want the clef to come after that double bar. > According to the documentation, this can be changed with > "break-alignment", in particular with: > > \override Score.BreakAlignment #'break-align-orders = > #(make-vector 3 '(span-bar > breathing-sign > staff-bar > key > clef > > time-signature)) > > > However, in the mini example just given above, adding that override in > the global declaration has no effect. I tried changing the order of > "key" and "clef" in the override, again with no effect. (When I tried > his in a larger piece, the key change was printed on the bar-line!) > > Is there any way I can notate a key change, at a segno with an extra > bar line, in order: bar line, clef, key ? Well, the \global is unused in your example, so it's not surprising that the override has no effect. With that oversight corrected, the problem is that the break align symbol for a KeySignature is not 'key but 'key-signature. You will find this at http://lilypond.org/doc/v2.23/Documentation/internals/keysignature (the break-align-symbol property). So this works: \version "2.22.1" \language english global = { \clef treble \time 4/4 \override Score.BreakAlignment.break-align-orders = #(make-vector 3 '(span-bar breathing-sign staff-bar clef key-signature time-signature)) } \relative c' { \global \key c \majorhttps://lilypond.org/doc/v2.23/Documentation/notation/adjusting-horizontal-spacing-for-specific-layout-objects c4 d e fs | g a \bar "||" \set Staff.forceClef = ##t \key c \minor bf c | bf af g f | ef d c2 } If, like me, you find the space between the clef and the key signature slightly excessive, you will want to look at https://lilypond.org/doc/v2.23/Documentation/notation/adjusting-horizontal-spacing-for-specific-layout-objects (that documentation was added in 2.23, but it works in 2.22 as well). Best, Jean |
- Key change with clef after the bar line? Alasdair McAndrew
- Re: Key change with clef after the bar line? Jean Abou Samra
- Re: Key change with clef after the bar line? Jean Abou Samra
- Re: Key change with clef after the bar line? Alasdair McAndrew
- RE: Key change with clef after the bar line? Alasdair
- Re: Key change with clef after the bar line... Wols Lists
- Re: Key change with clef after the bar line... Jean Abou Samra