On Tue, Oct 18, 2016 at 4:56 PM, Javier Ruiz-Alma <jav...@ruiz-alma.com> wrote: > The first segment of a slur that spans to the next system is typeset short if > a clef change is present at the end of the originating measure. The first > segment won't overlap the space above the changed clef. > > Javier Ruiz-Alma > > \version "2.18.2" > \score { > << > { c''2 c''4\( c'' \break > c''1\) > c''4 c'' c'' c''( \break > c''1) > } > { c''1 \clef bass > c' c' \clef treble > c' > } > >> > \layout { ragged-right = ##t indent = 0 } > } >
The problem you're seeing is that the right-bound of the slur is set to the *left* extent of the NonMusicalPaperColumn that encompasses the end materials of the line: Ordinarily, this means that a slur will end slightly before a barline, which looks fine. Unfortunately, the cautionary clef belongs to the NonMusicalPaperColumn at the end of the line, hence the distortion you're seeing. (The endpoint seems to be created in Slur_score_state::get_base_attachments in lily/slur-scoring.cc.) What's needed is the ability to align the endpoint of a slur to specific elements within the 'elements array of the paper column bound. Something like the 'break-alignable-interface which allows flexible alignments to grobs like BarNumber. David _______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org https://lists.gnu.org/mailman/listinfo/bug-lilypond