Menu

#3640 Accidentals don't reset after explicit barlines

Accepted
nobody
None
Enhancement
2020-02-17
2013-10-31
Anonymous
No

Originally created by: *anonymous

Originally created by: dak@gnu.org

This was originally part of issue 2379.  I am cutting and pasting two reports.  The first is about accidentals not resetting at an explicit bar created at \cadenzaOff, the second is about accidentals not resetting at an explicit bar created inside of unmetered music entered via \cadenzaOn/Off.  However, both reports actually can be considered only loosely related to cadenze as explicitly generated bars will generally be considered an accidental boundary (excepting, of course, \bar "" used for allowing breakpoints).

I am marking this issue as "Enhancement": the behavior is definitely a nuisance, but I don't think that we have any different expectations documented somewhere.

I append the original reports:

David Bobroff restated the problem in a post here:

http://lists.gnu.org/archive/html/bug-lilypond/2012-03/msg00238.html

Text of original post follows:

I'm re-framing my query regarding accidental behavior following \cadenzaOff. After some discussion about this on bug- it is quite clear that '\cadenzaOff' *only* affects counting/timing and '\bar' *only* paints a graphic of a bar line. Currently, if an accidental appears in the cadenza it will be visibly canceled if the key signature value of the note is used in the next "measure" even if '\cadenzaOff \bar "|."' is present. Musically this should not happen. Since a bar line has gone by the key signature is back in force.

This post in on -user to see if anyone has a solution; how do I suppress the accidental cancellation in the following example?

I've posted this to bug- to suggest that LilyPond should probably understand this.

Example:

%%%
\version "2.14.2"

\relative c'
{
  \key c \major
  \time 2/4
  c2 ~
  \cadenzaOn
  c4 \teeny d8-[ es f g-] \normalsize a4-\fermata
  \cadenzaOff
  \bar "|"
  e2 % how to suppress accidental cancellation here?
}
%%%

-David

Nathan Williams reported surprising behaviour:

http://lists.gnu.org/archive/html/bug-lilypond/2012-05/msg00060.html

Original post follows:

When using a cadenza across several measures (for engraving unmetered Russian
liturgical music), accidentals are displayed only the first time they occur.

I.e.:

\cadenzaOn

d4 e f2( d8[ e] f4) f f4 f( e2 f4) d1
\bar "|"
e4 e e f( e) d cs d1
\bar "|"
f2 ( d8[ e] f4) f f4 f( e2) f4 d1
\bar "|"
e4 e e f( e d) cs d1
\bar "|"
f2 ( d8[ e] f4) f f( e2 f4 d2 f4 e d cs d) e d1
\bar "|"
e4 e e e f( e) d cs8([ d] e4 d cs) d1
\bar "||"

\cadenzaOff

C sharp, which occurs in lines 2, 4, 5, and 6, is only displayed the first time
it occurs, in line 2.

Since using \cadenzaOn and \cadenzaOff is a recommended solution for engraving
unmetered music (see
http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Working-with-ancient-music_002d_002dscenarios-and-solutions),
it would be great if the issue were corrected, or else a workaround provided and
the issue inserted on the above page in the "known issues and warnings" section.

Thank you!

Related

Issues: #2379
Issues: #5740

Discussion

  • Google Importer

    Google Importer - 2013-12-05

    Originally posted by: JanRosse...@gmail.com

    Yes this is most certainly a nuisance for longer cadenzas. Was just hitting this when setting the "grand cadenza" for Rachmaninoffs 3rd pianoconcerto. 4 pages, so it is quite annoying when a accidental suddenly is printed (or not) because two pages ago the same note occurred.

    A work-around is to explicitly issue a \key command after an explicit \bar, and hide explicit key changes (\set Staff.explicitKeySignatureVisibility = #begin-of-line-visible)

     
  • Dan Eble

    Dan Eble - 2020-02-17

    Another workaround to consider: insert \partial 1024 s1024 after the cadenza. Mid-piece \partial was not supported at the time this issue was reported.