]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/expressive.itely
lilypond-book robustness: ensure EOL at the end of @verbatim
[lilypond.git] / Documentation / user / expressive.itely
index 86dd7e4dff6da657222ccca8cd9dca3516b8d53c..56904b0067206e54fbdb1b3098d45101105e8ae7 100644 (file)
@@ -107,7 +107,7 @@ c4->  c-.  c2-_
 
 The rules for the default placement of articulations are defined
 in @file{scm/@/script@/.scm}.  Articulations and ornamentations
-may be manually placed above or below the staff, see
+may be manually placed above or below the staff; see
 @ref{Direction and placement}.
 
 
@@ -194,9 +194,9 @@ such as @code{c4\ff}.  The available dynamic marks are
 @code{\ppppp}, @code{\pppp}, @code{\ppp}, @code{\pp}, @code{\p},
 @code{\mp}, @code{\mf}, @code{\f}, @code{\ff}, @code{\fff},
 @code{\ffff}, @code{\fp}, @code{\sf}, @code{\sff}, @code{\sp},
-@code{\spp}, @code{\sfz}, and @code{\rfz}.  The dynamic marks may
-be manually placed above or below the staff, see
-@ref{Direction and placement}.
+@code{\spp}, @code{\sfz}, and @code{\rfz}.  Dynamic marks may be
+manually placed above or below the staff; see @ref{Direction and
+placement}.
 
 @lilypond[verbatim,quote,relative=2]
 c2\ppp c\mp
@@ -419,8 +419,7 @@ boxF = \markup { \bracket { \dynamic f } }
 @funindex make-dynamic-script
 
 Simple, centered dynamic marks are easily created with the
-@code{make-dynamic-script} function.  The dynamic font only
-contains the characters @code{f,m,p,r,s} and @code{z}.
+@code{make-dynamic-script} function.
 
 @lilypond[verbatim,quote]
 sfzp = #(make-dynamic-script "sfzp")
@@ -429,11 +428,15 @@ sfzp = #(make-dynamic-script "sfzp")
 }
 @end lilypond
 
-In general, @code{make-dynamic-script} takes any markup object as
-its argument.  In the following example, using
-@code{make-dynamic-script} ensures the vertical alignment of
-markup objects and hairpins that are attached to the same note
-head.
+In general, @code{make-dynamic-script} takes any markup object as its
+argument.  The dynamic font only contains the characters
+@code{f,m,p,r,s} and @code{z}, so if a dynamic mark that includes
+plain text or punctuation symbols is desired, markup commands that
+reverts font family and font encoding to normal text should be used,
+for example @code{\normal-text}.  The interest of using
+@code{make-dynamic-script} instead of an ordinary markup is ensuring
+the vertical alignment of markup objects and hairpins that are
+attached to the same note head.
 
 @lilypond[verbatim,quote]
 roundF = \markup { \center-align \concat {
@@ -441,11 +444,17 @@ roundF = \markup { \center-align \concat {
            \dynamic f
            \normal-text { \bold { \italic ) } } } }
 boxF = \markup { \bracket { \dynamic f } }
+mfEspress = \markup { \center-align \line {
+              \hspace #3.7 mf \normal-text \italic espress. } }
 roundFdynamic = #(make-dynamic-script roundF)
 boxFdynamic = #(make-dynamic-script boxF)
+mfEspressDynamic = #(make-dynamic-script mfEspress)
 \relative c' {
   c4_\roundFdynamic\< d e f
-  g,1_\boxFdynamic
+  g,1~_\boxFdynamic\>
+  g
+  g'~\mfEspressDynamic
+  g
 }
 @end lilypond
 
@@ -513,17 +522,9 @@ a4 g2 f4)
 @funindex \slurNeutral
 @funindex slurNeutral
 
-Slurs may be manually placed above or below the notes, see
+Slurs may be manually placed above or below the staff; see
 @ref{Direction and placement}.
 
-@lilypond[verbatim,quote,relative=2]
-c2( d)
-\slurDown
-c2( d)
-\slurNeutral
-c2( d)
-@end lilypond
-
 @cindex phrasing slur
 @cindex multiple slurs
 @cindex simultaneous slurs
@@ -536,16 +537,13 @@ slur can overlap a slur.  This permits two slurs to be printed at
 once.  For details, see @ref{Phrasing slurs}.
 
 @cindex slur style
-@cindex solid slur
-@cindex dotted slur
-@cindex dashed slur
 @cindex slur, solid
 @cindex slur, dotted
 @cindex slur, dashed
 @cindex solid slur
 @cindex dotted slur
 @cindex dashed slur
-@cindex sytle, slur
+@cindex style, slur
 @funindex \slurDashed
 @funindex slurDashed
 @funindex \slurDotted
@@ -566,6 +564,44 @@ c4( e g2)
 g4( e c2)
 @end lilypond
 
+@funindex \slurHalfDashed
+@funindex slurHalfDashed
+@funindex \slurHalfSolid
+@funindex slurHalfSolid
+@cindex slur, half dashed and half solid
+
+Slurs can also be made half-dashed (the first half dashed, the
+second half solid) or half-solid (the first half solid, the second
+half dashed):
+
+@lilypond[verbatim,quote,relative=1]
+c4( e g2)
+\slurHalfDashed
+g4( e c2)
+\slurHalfSolid
+c4( e g2)
+\slurSolid
+g4( e c2)
+@end lilypond
+
+@funindex \slurDashPattern
+@funindex slurDashPattern
+@cindex slur, defining dash patterns
+
+Custom dash patterns for slurs can be defined:
+
+@lilypond[verbatim,quote,relative=1]
+c4( e g2)
+\slurDashPattern #0.7 #0.75
+g4( e c2)
+\slurDashPattern #0.5 #2.0
+c4( e g2)
+\slurSolid
+g4( e c2)
+@end lilypond
+
+
+
 @funindex \slurUp
 @funindex slurUp
 
@@ -576,6 +612,9 @@ g4( e c2)
 @code{\slurNeutral},
 @code{\slurDashed},
 @code{\slurDotted},
+@code{\slurHalfDashed},
+@code{\slurHalfSolid},
+@code{\slurDashPattern},
 @code{\slurSolid}.
 @endpredefined
 
@@ -585,11 +624,11 @@ g4( e c2)
 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
 {using-double-slurs-for-legato-chords.ly}
 
-@c TODO remove ignores after LSR update
-@ignore
 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-{positioning-text-markups-inside-slurs}
-@end ignore
+{positioning-text-markups-inside-slurs.ly}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{making-slurs-with-complex-dash-structure.ly}
 
 @seealso
 Music Glossary:
@@ -634,34 +673,35 @@ e2) d\)
 @funindex phrasingSlurDown
 @funindex \phrasingSlurNeutral
 @funindex phrasingSlurNeutral
-@funindex phrasingSlurDashed
-@funindex \phrasingSlurDashed
-@funindex \phrasingSlurDotted
-@funindex phrasingSlurDotted
-@funindex \phrasingSlurSolid
-@funindex phrasingSlurSolid
 
 Typographically, a phrasing slur behaves almost exactly like a
 normal slur.  However, they are treated as different objects; a
 @code{\slurUp} will have no effect on a phrasing slur.  Phrasing
-slurs may be manually placed above or below the notes, see
+may be manually placed above or below the staff; see
 @ref{Direction and placement}.
 
-@lilypond[verbatim,quote,relative=1]
-c4\( g' c,( b) | c1\)
-\phrasingSlurUp
-c4\( g' c,( b) | c1\)
-@end lilypond
-
 @cindex simultaneous phrasing slurs
 @cindex multiple phrasing slurs
-@cindex slurs, simultaneous phrasing
-@cindex slurs, multiple phrasing
-@cindex phrasing slurs, simultaneous
-@cindex phrasing slurs, multiple
+@cindex slur, simultaneous phrasing
+@cindex slur, multiple phrasing
+@cindex phrasing slur, simultaneous
+@cindex phrasing slur, multiple
 
 Simultaneous or overlapping phrasing slurs are not permitted.
 
+@funindex phrasingSlurDashed
+@funindex \phrasingSlurDashed
+@funindex \phrasingSlurDotted
+@funindex phrasingSlurDotted
+@funindex \phrasingSlurSolid
+@funindex phrasingSlurSolid
+@cindex phrasing slur, dashed
+@cindex dashed phrasing slur
+@cindex phrasing slur, dotted
+@cindex dotted phrasing slurs
+@cindex slur, dashed phrasing
+@cindex slur, dotted phrasing
+
 Phrasing slurs can be solid, dotted, or dashed.  Solid is the default
 style for phrasing slurs:
 
@@ -675,6 +715,48 @@ c4\( e g2\)
 g4\( e c2\)
 @end lilypond
 
+@funindex phrasingSlurHalfDashed
+@funindex \phrasingSlurHalfDashed
+@funindex \phrasingSlurHalfSolid
+@funindex phrasingSlurHalfSolid
+@cindex phrasing slur, half solid and half dashed
+@cindex slur, half solid and half dashed phrasing
+
+Phrasing slurs can also be made half-dashed (the first half dashed, the
+second half solid) or half-solid (the first half solid, the second
+half dashed):
+
+@lilypond[verbatim,quote,relative=1]
+c4\( e g2\)
+\phrasingSlurHalfDashed
+g4\( e c2\)
+\phrasingSlurHalfSolid
+c4\( e g2\)
+\phrasingSlurSolid
+g4\( e c2\)
+@end lilypond
+
+@funindex \phrasingSlurDashPattern
+@funindex phrasingSlurDashPattern
+@cindex phrasing slur, defining dash patterns
+@cindex slur, phrasing, defining dash patterns
+@cindex slur, definind dash patterns for phrasing
+
+Custom dash patterns for phrasing slurs can be defined:
+
+@lilypond[verbatim,quote,relative=1]
+c4\( e g2\)
+\phrasingSlurDashPattern #0.7 #0.75
+g4\( e c2\)
+\phrasingSlurDashPattern #0.5 #2.0
+c4\( e g2\)
+\phrasingSlurSolid
+g4\( e c2\)
+@end lilypond
+
+Dash pattern definitions for phrasing slurs have the same structure
+as dash pattern definitions for slurs.  For more information about
+complex dash patterns, see the snippets under @ref{Slurs}.
 
 @predefined
 @code{\phrasingSlurUp},
@@ -682,6 +764,9 @@ g4\( e c2\)
 @code{\phrasingSlurNeutral},
 @code{\phrasingSlurDashed},
 @code{\phrasingSlurDotted},
+@code{\phrasingSlurHalfDashed},
+@code{\phrasingSlurHalfSolid},
+@code{\phrasingSlurDashPattern},
 @code{\phrasingSlurSolid}.
 @endpredefined
 
@@ -691,7 +776,8 @@ Learning Manual:
 @rlearning{On the un-nestedness of brackets and ties}.
 
 Notation Reference:
-@ref{Direction and placement}.
+@ref{Direction and placement},
+@ref{Slurs}.
 
 Snippets:
 @rlsr{Expressive marks}.
@@ -883,6 +969,8 @@ Different types of arpeggios may be written.
 @funindex arpeggioBracket
 @funindex \arpeggioParenthesis
 @funindex arpeggioParenthesis
+@funindex \arpeggioParenthesisDashed
+@funindex arpeggioParenthesisDashed
 
 Special @emph{bracketed} arpeggio symbols can be created:
 
@@ -892,10 +980,15 @@ Special @emph{bracketed} arpeggio symbols can be created:
 <c e g c>2\arpeggio
 \arpeggioParenthesis
 <c e g c>2\arpeggio
+\arpeggioParenthesisDashed
+<c e g c>2\arpeggio
 \arpeggioNormal
 <c e g c>2\arpeggio
 @end lilypond
 
+The dash properties of the parenthesis arpeggio are controlled
+with the @code{'dash-details} property, which is described at @ref{Slurs}.
+
 Arpeggios can be explicitly written out with ties.  For more
 information, see @ref{Ties}.
 
@@ -906,7 +999,8 @@ information, see @ref{Ties}.
 @code{\arpeggioArrowDown},
 @code{\arpeggioNormal},
 @code{\arpeggioBracket},
-@code{\arpeggioParenthesis}.
+@code{\arpeggioParenthesis}
+@code{\arpeggioParenthesisDashed}.
 @endpredefined
 
 
@@ -927,6 +1021,7 @@ Music Glossary:
 @rglos{arpeggio}.
 
 Notation Reference:
+@ref{Slurs},
 @ref{Ties}.
 
 Snippets:
@@ -934,6 +1029,7 @@ Snippets:
 
 Internals Reference:
 @rinternals{Arpeggio},
+@rinternals{Slur},
 @rinternals{PianoStaff}.