On 6/3/20, Robert Blackstone <blackstone.rob...@gmail.com> wrote: > Overall there are several instances where I needed "\once \override > NoteColumn #'force-hshift = #x" , and a few "\once\override > NoteColumn.X-offset = #x”.
Ouch. That’s pretty brutal. May I ask why you felt the need to use all these? This alters drastically the layout, and basically amounts to force your own spacing decisions onto LilyPond’s. Frankly, I’ve written (and transcribed) very complex piano scores, and not once have I needed to mess with Lily’s own idea of where the NoteColumn objects should begin and end; of course \voiceThree and \voiceFour internally rely on that, but with some fairly sane (and tame) predefined values. If you need some non-standard alignments, I’d recommend using the simplest of tricks like invisible rests and duration multipliers instead: %%%% upperI = \relative { fis'8 r fis2 fis2.~ fis8 f d2 } upperII = \relative { <c' es>8 r s32 <d f!>4*15/16( <c es> s4*3/4 <b d> c b)~ 2. } lowerI = \relative { \oneVoice <e f a>8 r <es fis a>2 \voiceOne s4*3/4 f a gis s2. } lowerII = \relative { s2. es <es g> } \new PianoStaff << \accidentalStyle PianoStaff.neo-modern \new Staff = "up" << \time 3/4 \new Voice { \voiceOne \upperI } \new Voice { \voiceTwo \upperII } >> \new Staff = "dn" << \clef bass \new Voice { \voiceOne \lowerI } \new Voice { \voiceTwo \lowerII } >> >> \layout { \context { \Staff \consists #Merge_rests_engraver } } %%%% Cheers, -- V.