On Wed, Mar 6, 2013 at 6:00 PM, Thomas Morley <thomasmorle...@googlemail.com> wrote: > Well, nowadays we have the 'collision-interfaces-property but adding > breathing-sign-interface to it seems to have no effect. > > \version "2.17.12" > > respectBS = { > \override Beam #'collision-interfaces = > #'(beam-interface > clef-interface > breathing-sign-interface > flag-interface > inline-accidental-interface > key-signature-interface > note-head-interface > octavate-eight-interface > stem-interface > time-signature-interface) > } > > \relative c' { > \respectBS > c8 d e f b[ a \breathe g f] > }
Reviving this old thread. I was trying to do this today and found the same frustration. It looks like it requires a simple change to the code: ================================================================= diff --git a/lily/auto-beam-engraver.cc b/lily/auto-beam-engraver.cc index 8b55b44..92bc796 100644 --- a/lily/auto-beam-engraver.cc +++ b/lily/auto-beam-engraver.cc @@ -353,7 +353,8 @@ void Auto_beam_engraver::acknowledge_breathing_sign (Grob_info /* info */) { check_bar_property (); - if (stems_) + bool breathBreaksBeam = to_boolean (get_property ("breathingSignBreaksBeam")); + if (stems_ && breathBreaksBeam) end_beam (); } diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly index ebfff6a..322db5f 100644 --- a/ly/engraver-init.ly +++ b/ly/engraver-init.ly @@ -638,6 +638,7 @@ automatically when an output definition (a @code{\\score} or beamHalfMeasure = ##t autoBeaming = ##t + breathingSignBreaksBeam = ##t autoBeamCheck = #default-auto-beam-check completionFactor = #unity-if-multimeasure diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm index 2d38188..3e5510d 100644 --- a/scm/define-context-properties.scm +++ b/scm/define-context-properties.scm @@ -115,6 +115,7 @@ arguments, @var{context}, @var{dir} [start/@/stop (-1 or 1)], and starts or stops the auto beam.") (autoBeaming ,boolean? "If set to true then beams are generated automatically.") + (breathingSignBreaksBeam ,boolean? "Indicates that a breathing sign causes beams to break.") (autoCautionaries ,list? "List similar to @code{autoAccidentals}, but it controls cautionary accidentals rather than normal ones. Both lists are tried, and the one giving the most accidentals wins. In ================================================================= Is this an appropriate approach? Ideally it'd be nice to give it a list of things that cause beams to end (e.g. breathing sign, manual beam, bar line, etc.). -----Jay _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user