| [ << Workaround ] | [Top][Contents] | [ >> ] |
| [ < Marking notes of spoken parts with a cross on the stem (Sprechstimme) ] | [ Up: Workaround ] | [ Positioning segno and coda (with line break) > ] |
Positioning grace notes with floating space
Setting the property strict-grace-spacing makes the musical
columns for grace notes ‘floating’, i.e., decoupled from the non-grace
notes: first the normal notes are spaced, then the (musical columns of
the) graces are put left of the musical columns for the main notes.
Due to issue #6876, however, accidentals are ignored if this property is set. This snippet gives a workaround to circumvent the problem.
Another unfortunate side effect of this property is that LilyPond does
not check whether there is enough horizontal space for grace notes
(this is tracked as
issue #2630).
You have to make sure that enough space is available, for example, by
using \newSpacingSection together with a proper value for the
base-shortest-duration of the SpacingSpanner grob.
shiftedGrace = #(define-music-function (offset music) (number? ly:music?) #{ \override NoteHead.X-offset = #(- offset 0.85) \override Stem.X-offset = #offset \grace { $music } \revert NoteHead.X-offset \revert Stem.X-offset #}) \relative c'' << { g4 \shiftedGrace #-1.3 a32 \shiftedGrace #-0.5 { bes c d } es4 } { f,32 e d c f e d c f4 } >> \layout { \context { \Score \override SpacingSpanner.strict-grace-spacing = ##t } }
| [ << Workaround ] | [Top][Contents] | [ >> ] |
| [ < Marking notes of spoken parts with a cross on the stem (Sprechstimme) ] | [ Up: Workaround ] | [ Positioning segno and coda (with line break) > ] |