TL;DR version of the question: How could I define an accidental style that behaves mostly like neo-modern, but also avoids repeating accidentals within a beamed group?

Full explanation why --

I have a cadenza which, according to Frescobaldi's duration counter, spans 59 quarter notes. It's in a free-chromatic style, so accidentals are very important. Because it's in \cadenzaOn ... \cadenzaOff, accidentals are remembered and not repeated basically "forever" within this stretch of time.

If it were a C instrument, it would be easy: I would sprinkle "!" throughout, wherever I want to see the accidental but it isn't printed by default. But it's actually for clarinet in A... so I write the music variable in concert pitch, and then use \transpose a c' in the layout file for the part. Then, some of the accidentals that had to be forced for the score in C end up forcing a natural-sign in the part, which looks dumb.

It turns out that most of the cadenza looks okay if I use neo-modern accidental style, *but* there's one exception: fast notes that alternate between two pitches. See the example pasted below:

#1 is the appearance I want (first bar is concert pitch, second bar is transposed).

#2 illustrates the problem I described above. Forcing the second "cs!" causes a confusing natural sign to be printed.

#3 The default accidental style "works," but doesn't scale up nicely to a 59-beat cadenza (because it will hide an accidental that appeared ten whole notes ago).

#4 Neo-modern is "acceptable," the third sharp is really terribly fussy.

A nice middle ground between "remember accidentals for the whole cadenza" and "remember accidentals only from the immediately preceding note" would be to remember accidentals within a beamed group. Is there any way to hack this up in scheme, say?

Thanks,
hjh

~~ EXAMPLE

\version "2.18.2"
\language "english"

\markup "What I'd like"

\score {
 \new Staff {
   \time 2/4
   \relative c'' { e8 [ cs ] \tuplet 5/4 { e16 [ cs! e cs e ] } }
   \bar "||"
\transpose a c' \relative c'' { e8 [ cs ] \tuplet 5/4 { e16 [ cs e cs e ] } }
 }
}

\markup \column {
 \vspace #2
"What I get by using 'transpose' with a music variable: Superfluous natural-sign"
}

notesA = \relative c'' { e8 [ cs ] \tuplet 5/4 { e16 [ cs! e cs e ] } }

\score {
 \new Staff \relative c'' {
   \time 2/4
   \notesA
   \bar "||"
   \transpose a c' \notesA
 }
}

\markup \column {
 \vspace #2
\wordwrap-string #"Default, no big deal here but in a longer cadenza, need to force too many accidentals"
}

notesB = \relative c'' { e8 [ cs ] \tuplet 5/4 { e16 [ cs e cs e ] } }

\score {
 \new Staff {
   \accidentalStyle Staff.default
   \time 2/4
   \notesB
   \bar "||"
   \transpose a c' \notesB
 }
}

\markup \column { \vspace #2 "Neo-modern: The last sharp looks a bit silly" }

\score {
 \new Staff {
   \accidentalStyle Staff.neo-modern
   \time 2/4
   \notesB
   \bar "||"
   \transpose a c' \notesB
 }
}


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

Reply via email to