\header {
- texidoc = "If a hairpin ends on the first note of a new stave, we
+ texidoc = "If a hairpin ends on the first note of a new staff, we
do not print that ending. But on the previous line, this hairpin
should not be left open, and should end at the bar line. "
}
\version "2.14.0"
+\layout {
+ line-width = 4.\cm
+}
+
\relative c' {
c1\>
\break
c1\!
+ \override Hairpin #'to-barline = ##f
+ c1\>
+ \break
+ c1\!
}
value = get_property_data (sym);
assert (value == SCM_EOL || value == marker);
if (value == marker)
- *alist = scm_assq_remove_x (*alist, marker);
+ *alist = scm_assq_remove_x (*alist, sym);
}
else
{
broken[d] = bounds[d]->break_status_dir () != CENTER;
}
- broken[RIGHT] = broken[RIGHT] && me->broken_neighbor (RIGHT);
- broken[RIGHT] = broken[RIGHT] && me->broken_neighbor (RIGHT)->is_live ();
-
if (broken[RIGHT])
{
Spanner *next = me->broken_neighbor (RIGHT);
- Stencil *s = next->get_stencil ();
- if (!s || s->is_empty ())
+ // Hairpin-parts suicide in after-line-breaking if they need not be drawn
+ if (next)
+ {
+ (void) next->get_property ("after-line-breaking");
+ broken[RIGHT] = next->is_live ();
+ }
+ else
broken[RIGHT] = false;
}