I continually run into the problem where I have dynamics wth hairpins across phrases which cross staves, causing lilypond to throw the 'cross fingers' error repeatedly in a cascade. Despite crossing fingers (it is a well known fact I dislike this error expression) the output places the dynamics poorly. If I left these errors in my score I would have a hundred pages of the cross fingers output in the compilation log, making it hard to see anything else.
Starting lilypond 2.19.44 [cross-staff-dynamics.ly]... Processing `/home/andro/work/lilypond/fp/cross-staff-dynamics.ly' Parsing... Interpreting music... Preprocessing graphical objects... programming error: My pure_y_common is a VerticalAlignment, which might contain several staves. continuing, cross fingers programming error: My pure_y_common is a VerticalAlignment, which might contain several staves. continuing, cross fingers programming error: My pure_y_common is a VerticalAlignment, which might contain several staves. continuing, cross fingers programming error: My pure_y_common is a VerticalAlignment, which might contain several staves. continuing, cross fingers Finding the ideal number of pages... Fitting music on 1 page... Drawing systems... Layout output to `/tmp/lilypond-2L7Ozf'... Converting to `cross-staff-dynamics.pdf'... Deleting `/tmp/lilypond-2L7Ozf'... Success: compilation successfully completed Is this a bug, or is it something fundamental I am doing incorrectly? The workaround I have to use is to create a new voice for the bars in question just for the dynamics. This is tedious and clutters the score unnecessarily. For several reasons I do not want to create a dynamics context in the score (this may be my mistake?). MWE follows. [Probably not absolutely minimal, but it shows the general context I have very often.] Andrew == snip \version "2.19.44" treble = { \clef treble \time 1/4 \tupletUp \stemUp \tuplet 5/4 { f'''16_\f\> g'' a' fis'' ees' } | \tuplet 5/4 { c'' f' f'8 \change Staff = bass \stemUp b16_\p } | } bass = { \clef bass \time 1/4 c4 c } \score { \new PianoStaff << \new Staff = "treble" { \treble } \new Staff = "bass" { \bass } >> \layout { } } == snip _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user