]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/snippets/new/controlling-spanner-visibility-after-a-line-break.ly
resolve merge
[lilypond.git] / Documentation / snippets / new / controlling-spanner-visibility-after-a-line-break.ly
diff --git a/Documentation/snippets/new/controlling-spanner-visibility-after-a-line-break.ly b/Documentation/snippets/new/controlling-spanner-visibility-after-a-line-break.ly
new file mode 100644 (file)
index 0000000..8c9c8ce
--- /dev/null
@@ -0,0 +1,37 @@
+\version "2.14.0"
+
+\header {
+  lsrtags = "expressive-marks, tweaks-and-overrides"
+  texidoc = "The visibility of spanners which end on the first note
+following a line break is controlled by the @code{after-line-breaking}
+callback @code{ly:spanner::kill-zero-spanned-time}.
+
+For objects such as glissandos and hairpins, the default behaviour is
+to hide the spanner after a break; disabling the callback will allow
+the left-broken span to be shown.
+
+Conversely, spanners which are usually visible, such as text spans,
+can be hidden by enabling the callback.
+"
+
+  doctitle = "Controlling spanner visibility after a line break"
+}
+
+\paper { ragged-right = ##t }
+
+\relative c'' {
+  \override Hairpin #'to-barline = ##f
+  \override Glissando #'breakable = ##t
+  % show hairpin
+  \override Hairpin #'after-line-breaking = ##t
+  % hide text span
+  \override TextSpanner #'after-line-breaking =
+    #ly:spanner::kill-zero-spanned-time
+  e2\<\startTextSpan
+  % show glissando
+  \override Glissando #'after-line-breaking = ##t
+  f2\glissando
+  \break
+  f,1\!\stopTextSpan
+}
+