+ \property Score.autoAccidentals = #'(Staff (same-octave . 0))
+ \property Score.autoCautionaries = #'(Staff (any-octave . 0) (any-octave . 1))
+}
+
+% Multivoice accidentals to be read both by musicians playing one voice
+% and musicians playing all voices.
+% Accidentals are typeset for each voice, but they ARE cancelled across voices.
+modernVoiceAccidentals = {
+ \property Staff.extraNatural = ##f
+ \property Staff.autoAccidentals = #'(
+ Voice (same-octave . 0) (any-octave . 0) (any-octave . 1)
+ Staff (same-octave . 0) (any-octave . 0) (any-octave . 1)
+ )
+ \property Staff.autoCautionaries = #'()
+}
+
+% same as modernVoiceAccidental eccept that all special accidentals are typeset
+% as cautionaries
+modernVoiceCautionaries = {
+ \property Staff.extraNatural = ##f
+ \property Staff.autoAccidentals = #'(
+ Voice (same-octave . 0)
+ )
+ \property Staff.autoCautionaries = #'(
+ Voice (any-octave . 0) (any-octave . 1)
+ Staff (same-octave . 0) (any-octave . 0) (any-octave . 1)
+ )
+}
+
+% stone's suggestions for accidentals on grand staff.
+% Accidentals are cancelled across the staves in the same grand staff as well
+pianoAccidentals = {
+ \property GrandStaff.autoAccidentals = #'(
+ Staff (same-octave . 0) (any-octave . 0) (any-octave . 1)
+ GrandStaff (any-octave . 1)
+ )
+ \property GrandStaff.autoCautionaries = #'()