version that you are working on. See TRANSLATION for details.
@end ignore
+@c \version "2.11.38"
+
@node Expressive marks
@section Expressive marks
+@lilypondfile[quote]{expressive-headword.ly}
+
@menu
* Attached to notes::
* Curves::
@node Attached to notes
@subsection Attached to notes
-
@menu
* Articulations and ornamentations::
* Dynamics::
+* New dynamic marks::
@end menu
@node Articulations and ornamentations
-@unnumberedsubsubsec Articulations and ornamentations
+@subsubsection Articulations and ornamentations
-@cindex Articulations
+@cindex articulations
@cindex scripts
@cindex ornaments
-
-A variety of symbols can appear above and below notes to indicate
-different characteristics of the performance. All these symbols
-can be attached to a note using the syntax @var{note}@code{\}@var{name}.
-
-The possible values for @var{name} are listed in @ref{List of
-articulations}.
-
-Some of these articulations have shorthands for easier entry. They
-are used by adding a dash and the character signifying
-the articulation to the note name. The available shorthands and
-their output are:
-
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-\override TextScript #'font-family = #'typewriter
-\override TextScript #'font-shape = #'upright
-c''4-._"c-."
-c''4--_"c--"
-c''4-+_"c-+"
-c''4-|_"c-|"
-c''4->_"c->"
-c''4-^_"c-^"
-c''4-__"c-_"
-@end lilypond
-
-The marks are automatically placed, but the direction can be
-forced as well. Like other pieces of LilyPond code, @code{_} will
-place them below the staff, and @code{^} will place them above.
-This applies both to the shorthands and the fully named
-articulations. For the shorthands, the dash itself should be
-omitted; the shorthand signs replace it:
-
-@lilypond[quote,ragged-right,fragment,verbatim]
-c''4^^ c''4_^
-c\fermata c^\fermata c_\fermata
-@end lilypond
-
-
-@cindex accent
-@cindex marcato
-@cindex staccatissimo
@cindex espressivo
@cindex fermata
-@cindex stopped
-@cindex staccato
-@cindex portato
-@cindex tenuto
@cindex upbow
@cindex downbow
@cindex foot marks
@cindex coda
@cindex varcoda
+A variety of symbols that denote articulations, ornamentations,
+and other performance indications can be attached to a note using
+this syntax:
-@commonprop
+@example
+@var{note}\@var{name}
+@end example
-The meanings of the shorthands can be changed. They are defined
-in @file{ly/@/script@/-init@/.ly}, where the variables
-@code{DashDot}, @code{DashDash}, @code{DashPlus}, @code{DashBar},
-@code{DashLarger}, @code{DashHat}, and @code{DashUnderscore}
-are associated with the default articulation marks. If you want,
-e.g., @code{-+} to produce a trill instead of a "+", you can
-redefine the variable in your document:
+The possible values for @var{name} are listed in @ref{List of
+articulations}. For example:
-@lilypond[quote,ragged-right,verbatim]
-\relative c'' { c-+ }
-dashPlus = "trill"
-\relative c'' { c-+ }
+@lilypond[verbatim,quote,relative=2]
+c4\staccato c\mordent b2\turn
+c1\fermata
@end lilypond
-The vertical ordering of scripts is controlled with the
-@code{script-priority} property. The lower this number, the
-closer it will be put to the note. In this example, the
-@internalsref{TextScript} (the sharp symbol) first has the lowest
-priority, so it is put lowest in the first example. In the
-second, the prall trill (the @internalsref{Script}) has the
-lowest, so it is on the inside. When two objects have the same
-priority, the order in which they are entered decides which one
-comes first.
-
-
-@commonprop
-
-The meanings of the shorthands can be changed. They are defined
-in @file{ly/@/script@/-init@/.ly}, where the variables
-@code{DashDot}, @code{DashDash}, @code{DashPlus}, @code{DashBar},
-@code{DashLarger}, @code{DashHat}, and @code{DashUnderscore}
-are associated with the default articulation marks. If you want,
-e.g., @code{-+} to produce a trill instead of a "+", you can
-redefine the variable in your document:
-
-@lilypond[quote,ragged-right,verbatim]
-\relative c'' { c-+ }
-dashPlus = "trill"
-\relative c'' { c-+ }
-@end lilypond
+@cindex marcato
+@cindex stopped
+@cindex tenuto
+@cindex staccatissimo
+@cindex accent
+@cindex staccato
+@cindex portato
-The vertical ordering of scripts is controlled with the
-@code{script-priority} property. The lower this number, the
-closer it will be put to the note. In this example, the
-@internalsref{TextScript} (the sharp symbol) first has the lowest
-priority, so it is put lowest in the first example. In the
-second, the prall trill (the @internalsref{Script}) has the
-lowest, so it is on the inside. When two objects have the same
-priority, the order in which they are entered decides which one
-comes first.
-
-@lilypond[verbatim,relative=3,ragged-right,fragment,quote]
-\once \override TextScript #'script-priority = #-100
-a4^\prall^\markup { \sharp }
-
-\once \override Script #'script-priority = #-100
-a4^\prall^\markup { \sharp }
+Some of these articulations have shorthands for easier entry.
+Shorthands are appended to the note name, and their syntax
+consists of a dash (@tie{}@code{-}) followed by a symbol
+signifying the articulation. Predefined shorthands exist for
+@notation{marcato}, @notation{stopped}, @notation{tenuto},
+@notation{staccatissimo}, @notation{accent}, @notation{staccato},
+and @notation{portato}. Their corresponding output appears as
+follows:
+
+@lilypond[verbatim,quote,relative=2]
+c4-^ c-+ c-- c-|
+c4-> c-. c-_
@end lilypond
+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
+@ref{Direction and placement}.
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{modifying-default-values-for-articulation-shorthand-notation.ly}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{controlling-the-vertical-ordering-of-scripts.ly}
+
@seealso
-Program reference: @internalsref{Script}.
+Music Glossary:
+@rglos{tenuto},
+@rglos{accent},
+@rglos{staccato},
+@rglos{portato}.
+Notation Reference:
+@ref{Direction and placement}.
-@refbugs
+Installed Files:
+@file{scm/@/script@/.scm}.
+
+Snippets:
+@rlsr{Expressive marks}.
+
+Internals Reference:
+@rinternals{Script},
+@rinternals{TextScript}.
+
+
+@knownissues
These signs appear in the printed output but have no effect on the
MIDI rendering of the music.
@node Dynamics
-@unnumberedsubsubsec Dynamics
+@subsubsection Dynamics
-@cindex Dynamics
+@cindex absolute dynamics
+@cindex dynamics
+@cindex dynamics, absolute
+@funindex \ppppp
@funindex \pppp
@funindex \ppp
@funindex \pp
@funindex \sfz
@funindex \rfz
-Absolute dynamic marks are specified using a command after a note
-@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 can be placed
-above or below the staff with @code{_} and @code{^}, just like
-articulation marks.
-
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
-c2\ppp c\mp
-c\rfz c^\mf
-c_\spp c_\staccato^\ff
+Absolute dynamic marks are specified using a command after a note,
+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}.
+
+@lilypond[verbatim,quote,relative=2]
+c2\ppp c\mp
+c2\rfz c^\mf
+c2_\spp c^\ff
@end lilypond
+@cindex hairpin
@funindex \<
@funindex \>
@funindex \!
-
-A crescendo mark is started with @code{\<} and terminated with
-@code{\!} or an absolute dynamic. A decrescendo is started with
-@code{\>} and is also terminated with @code{\!} or an absolute
-dynamic. @code{\cr} and @code{\decr} may be used instead of
-@code{\<} and @code{\>}. They can be engraved either using a
-graphical sign (a @q{hairpin}), or with textual signs.
-
-Because these marks are bound to notes, you must use spacer notes
-if multiple marks are needed during one note.
-
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-c\< c\! d\> e\!
-<< f1 { s4 s4\< s4\! \> s4\! } >>
-@end lilypond
-
-This may give rise to very short hairpins. Use
-@code{minimum-length} in
-@internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
-example:
-
-@example
-\override Voice.Hairpin #'minimum-length = #5
-@end example
-
-@noindent
-A hairpin normally starts at the left edge of the beginning note
-and ends on the right edge of the ending note. If the ending note
-falls on the downbeat, the hairpin ends on the immediately
-preceding barline. This may be modified by setting the
-@code{hairpinToBarline} property,
-@cindex Hairpin
-
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-e4\< e2. e1\!
-\set hairpinToBarline = ##f
-e4\< e2. e1\!
+@funindex \cr
+@funindex \decr
+
+A @notation{crescendo} mark is started with @code{\<} and
+terminated with @code{\!}, an absolute dynamic, or an additional
+@notation{crescendo} or @notation{decrescendo} mark. A
+@notation{decrescendo} mark is started with @code{\>} and is also
+terminated with @code{\!}, an absolute dynamic, or another
+@notation{crescendo} or @notation{decrescendo} mark. @code{\cr}
+and @code{\decr} may be used instead of @code{\<} and @code{\>}.
+@notation{Hairpins} are engraved by default using this notation.
+
+@lilypond[verbatim,quote,relative=2]
+c2\< c\!
+d2\< d\f
+e2\< e\>
+f2\> f\!
+e2\> e\mp
+d2\> d\>
+c1\!
@end lilypond
-@cindex espressivo, articulation
-In some situations the @code{\espressivo} articulation mark may be
-suitable to indicate a crescendo and decrescendo on the one note:
+Spacer notes are needed to engrave multiple marks on one note.
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-c2 b4 a g1\espressivo
+@lilypond[verbatim,quote,relative=2]
+c4\< c\! d\> e\!
+<< f1 { s4 s4\< s4\> s4\! } >>
@end lilypond
-@cindex al niente
-@cindex niente, al
+@cindex espressivo articulation
-Hairpins may be printed with a circled tip (al niente notation) by
-setting the @code{circled-tip} property:
+In some situations the @code{\espressivo} articulation mark may be
+the appropriate choice to indicate a @notation{crescendo} and
+@notation{decrescendo} on one note:
-@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
-\override Hairpin #'circled-tip = ##t
-c2\< c\!
-c4\> c\< c2\!
+@lilypond[verbatim,quote,relative=2]
+c2 b4 a
+g1\espressivo
@end lilypond
-
@cindex crescendo
@cindex decrescendo
@cindex diminuendo
-
-You can use text saying @emph{cresc.}, @emph{decr.}, or
-@emph{dim.} instead of hairpins with the commands \setTextCresc,
-\setTextDim, and \setTextDecresc. The corresponding
-\setHairpinCresc, \setHairpinDim, and \setHairpinDecresc will
-revert to hairpins again:
-
-@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
+@funindex \setTextCresc
+@funindex \setTextDim
+@funindex \setTextDecr
+@funindex \setTextDecresc
+@funindex \setHairpinCresc
+@funindex \setHairpinDim
+@funindex \setHairpinDecresc
+
+@notation{Crescendos} and @notation{decrescendos} can be engraved
+as textual markings instead of hairpins. The built-in commands
+that enable these text modes are @code{\setTextCresc},
+@code{\setTextDecresc}, @code{\setTextDecr}, and
+@code{\setTextDim}. The corresponding @code{\setHairpinCresc},
+@code{\setHairpinDim}, and @code{\setHairpinDecresc} commands will
+revert to hairpins again:
+
+@lilypond[verbatim,quote,relative=2]
+c4\< d e f\!
+e4\> d c b\!
\setTextCresc
-c\< d e f\!
-\setHairpinCresc
-e\> d c b\!
+c4\< d e f\!
\setTextDecresc
-c\> d e f\!
-\setTextDim
-e\> d c b\!
-@end lilypond
-
-You can also supply your own texts and change the style of the
-spanner line with the properties @code{\crescendoText},
-@code{\crescendoSpanner}, @code{\decrescendoText}, and
-@code{\decrescendoSpanner}. Available values for the spanner
-properties are @code{hairpin}, @code{line}, @code{dashed-line},
-and @code{dotted-line}. If unset, a hairpin crescendo is used:
-
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\set crescendoText = \markup { \italic "cresc. poco" }
-\set crescendoSpanner = #'dotted-line
-a'2\< a a a a a a a\!\mf
+e4\> d c b\!
+\setHairpinCresc
+c4\< d e f\!
@end lilypond
-
-To create new dynamic marks or text that should be aligned with
-dynamics, see @ref{New dynamic marks}.
+To create new absolute dynamic marks or text that should be
+aligned with dynamics, see @ref{New dynamic marks}.
Vertical positioning of dynamics is handled by
-@internalsref{DynamicLineSpanner}.
-
+@rinternals{DynamicLineSpanner}.
-@commonprop
-Dynamics that occur at, begin on, or end on the same note will be
-vertically aligned. If you want to ensure that dynamics are
-aligned when they do not occur on the same note, you can increase
-the @code{staff-padding} property.
-
-@example
-\override DynamicLineSpanner #'staff-padding = #4
-@end example
-
-You may also use this property if the dynamics are colliding with
-other notation.
-
-Crescendi and decrescendi that cross a line break will be
-continued on the second line. If they end on the first note of a
-new line, nothing will be printed on that line. To change this
-behavior, use
-
-@example
-\override Score.Hairpin #'after-line-breaking = ##t
-@end example
-
-Text style dynamic changes (such as @emph{cresc.} and @emph{dim.})
-are printed with a dashed line showing their extent. To surpress
-printing this line, use
-
-@example
-\override DynamicTextSpanner #'dash-period = #-1.0
-@end example
-
-
-@refcommands
+@predefined
@funindex \dynamicUp
@code{\dynamicUp},
@code{\dynamicNeutral}.
-@seealso
-
-Program reference: @internalsref{DynamicText},
-@internalsref{Hairpin}. Vertical positioning of these symbols is
-handled by @internalsref{DynamicLineSpanner}.
-Glossary: @rglos{Hairpin}, @rglos{crescendo}, @rglos{decrescendo}
+@snippets
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{setting-hairpin-behavior-at-bar-lines.ly}
-@node Curves
-@subsection Curves
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{setting-the-minimum-length-of-hairpins.ly}
-@menu
-* Ties::
-* Slurs::
-* Phrasing slurs::
-* Breath marks::
-* Falls and doits::
-@end menu
+@cindex al niente
+@cindex niente, al
-@node Ties
-@unnumberedsubsubsec Ties
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{printing-hairpins-using-al-niente-notation.ly}
-@cindex tie
-@funindex ~
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{vertically-aligning-dynamics-across-multiple-notes.ly}
-A tie connects two adjacent note heads of the same pitch. The tie
-in effect extends the length of a note.
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{hiding-the-extender-line-for-text-dynamics.ly}
-@warning{Ties should not be confused with @emph{slurs}, which
-indicate articulation, or @emph{phrasing slurs}, which indicate
-musical phrasing. A tie is just a way of extending a note
-duration, similar to the augmentation dot.}
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{changing-text-and-spanner-styles-for-text-dynamics.ly}
-A tie is entered using the tilde symbol @code{~}
-@lilypond[quote,ragged-right,fragment,verbatim]
-e' ~ e'
-@end lilypond
+@seealso
+@c TODO: Add hairpin to glossary.
-@noindent
-Ties are used either when the note crosses a bar line, or when
-dots cannot be used to denote the rhythm. Ties should also be
-used when note values cross larger subdivisions of the measure:
+Music Glossary:
+@rglos{crescendo},
+@rglos{decrescendo}.
-@lilypond[fragment,quote,ragged-right]
-\relative {
- r8 c8 ~ c2 r4 | r8^"not" c2 ~ c8 r4
-}
-@end lilypond
+Learning Manual:
+@rlearning{Articulation and dynamics}.
-If you need to tie a lot of notes over bars, it may be easier to
-use automatic note splitting (see @ref{Automatic note splitting}).
-This mechanism automatically splits long notes, and ties them
-across bar lines.
+Notation Reference:
+@ref{Direction and placement}.
-@funindex \repeatTie
-@cindex repeating ties
-@cindex volta brackets and ties
+Snippets:
+@rlsr{Expressive marks}.
-When a tie is applied to a chord, all note heads whose pitches
-match are connected. When no note heads match, no ties will be
-created. Chords may be partially tied by placing the tie inside
-the chord.
+Internals Reference:
+@rinternals{DynamicText},
+@rinternals{Hairpin},
+@rinternals{DynamicLineSpanner}.
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
- <c e g> ~ <c e g>
-<c~ e g~ b> <c e g b>
-@end lilypond
-When a second alternative of a repeat starts with a tied note, you
-have to repeat the tie. This can be achieved with
-@code{\repeatTie},
+@node New dynamic marks
+@subsubsection New dynamic marks
-@lilypond[fragment,quote,ragged-right,relative=2]
-\repeat volta 2 { c g <c e>2 ~ }
-\alternative {{ <c e>2. r4 } {<c e>2\repeatTie d4 c }}
-@end lilypond
+@cindex new dynamic marks
+@cindex dynamic marks, new
-@cindex Laissez vibrer
-@cindex Ties, laissez vibrer
+The easiest way to create dynamic indications is to use
+@code{\markup} objects.
-@notation{L.v.} ties (@notation{laissez vibrer}) indicate that
-notes must not be damped at the end. It is used in notation for
-piano, harp and other string and percussion instruments. They can
-be entered using @code{\laissezVibrer}:
+@lilypond[verbatim,quote]
+moltoF = \markup { molto \dynamic f }
-@lilypond[fragment,ragged-right,verbatim,relative=1]
-<c f g>\laissezVibrer
+\relative c' {
+ <d e>16 <d e>
+ <d e>2.._\moltoF
+}
@end lilypond
-The direction of a tie can be specified with @code{\tieUp} or
-@code{\tieDown} (see example below). @code{\tieNeutral} reverts
-to the default behaviour again.
+@cindex dynamics, editorial
+@cindex dynamics, parenthesis
-However, as with other music elements of this kind, there is a
-convenient shorthand for forcing tie directions. By adding
-@code{_} or @code{^} before the tilde, the direction is also set:
+Markup mode makes possible, for instance, to add
+editorial dynamics, printed in round parenthesis or square
+brackets. Its syntax is described in @ref{Formatting text}.
-@lilypond[relative=2,ragged-right,quote,verbatim,fragment]
-c4_~ c c^~ c)
+@lilypond[verbatim,quote]
+roundf = \markup { \center-align { \line { \bold { \italic ( }
+ \dynamic f \bold { \italic ) } } } }
+boxf = \markup { \bracket { \dynamic f } }
+\relative c' {
+ c1_\roundf
+ c1_\boxf
+}
@end lilypond
+Markup objects are treated differently from authentic dynamic marks.
+Defining dynamic objects that will be entered and printed exactly like
+standard dynamic marks is also possible, using the following function:
-@seealso
-
-Program reference:
-@internalsref{LaissezVibrerTie}
-@internalsref{LaissezVibrerTieColumn}
-
-Example files:
-@lsr{connecting,laissez-vibrer-ties.ly}
-
-
-@commonprop
-
-Ties are sometimes used to write out arpeggios. In this case, two
-tied notes need not be consecutive. This can be achieved by
-setting the @code{tieWaitForNote} property to true. The same
-feature is also useful, for example, to tie a tremolo to a chord,
-but in principle, it can also be used for ordinary, consecutive
-notes:
+@cindex make-dynamic-script
-@lilypond[fragment,verbatim,relative=1,ragged-right,quote]
-\set tieWaitForNote = ##t
-\grace { c16[~ e~ g]~ } <c, e g>2
-\repeat tremolo 8 { c32~ c'~ } <c c,>1
-e8~ c~ a~ f~ <e' c a f>2
-\tieUp c8~ a \tieDown \tieDotted g~ c g2
+@lilypond[verbatim,quote]
+sfzp = #(make-dynamic-script "sfzp")
+\relative c' {
+ c4 c c\sfzp c
+}
@end lilypond
-Ties may be engraved manually by changing the
-@code{tie-configuration} property. The first number indicates the
-distance from the center of the staff in staff-spaces, and the
-second number indicates the direction (1=up, -1=down).
-
-@lilypond[fragment,verbatim,relative=1,ragged-right,quote]
-<c e g>2~ <c e g> |
-\override TieColumn #'tie-configuration =
- #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
-<c e g>~ <c e g> |
+@noindent
+Note that the dynamic font only contains the characters
+@code{f,m,p,r,s} and @code{z}. To switch to other font families,
+it is necessary to use markup mode in its Scheme form, as
+explained in @ref{Markup construction in Scheme}.
+
+@lilypond[verbatim,quote]
+moltoF = #(make-dynamic-script (markup
+ #:normal-text "molto"
+ #:dynamic "f"))
+\relative c' {
+ <d e>16 <d e>
+ <d e>2..\moltoF
+}
@end lilypond
-
-@refcommands
-
-
-@funindex \tieUp
-@code{\tieUp},
-@funindex \tieDown
-@code{\tieDown},
-@funindex \tieNeutral
-@code{\tieNeutral},
-@funindex \tieDotted
-@code{\tieDotted},
-@funindex \tieDashed
-@code{\tieDashed},
-@funindex \tieSolid
-@code{\tieSolid}.
+@noindent
+Font settings in markup mode are described in
+@ref{Common markup commands}.
@seealso
-In this manual: @ref{Automatic note splitting}.
-
-Program reference: @internalsref{Tie}.
+Notation Reference:
+@ref{Formatting text},
+@ref{Common markup commands},
+@ref{Markup construction in Scheme}.
+Snippets:
+@rlsr{Expressive marks}.
-@refbugs
-Switching staves when a tie is active will not produce a slanted
-tie.
-
-Changing clefs or octavations during a tie is not really
-well-defined. In these cases, a slur may be preferable.
+@node Curves
+@subsection Curves
+@menu
+* Slurs::
+* Phrasing slurs::
+* Breath marks::
+* Falls and doits::
+@end menu
@node Slurs
-@unnumberedsubsubsec Slurs
+@subsubsection Slurs
-@cindex Slurs
+@cindex slurs
-A slur indicates that notes are to be played bound or
-@emph{legato}. They are entered using parentheses:
+@notation{Slurs} are entered using parentheses:
-@lilypond[quote,ragged-right,relative=2,fragment,verbatim]
-f( g a) a8 b( a4 g2 f4)
+@lilypond[verbatim,quote,relative=2]
+f4( g a) a8 b(
+a4 g2 f4)
<c e>2( <b d>2)
@end lilypond
-Just as with ties, the direction of a slur can be specified with
-@code{\slur@emph{DIR}}, where @code{@emph{DIR}} is either
-@code{Up}, @code{Down}, or @code{Neutral} (automatically
-selected). The shorthands are also available: by adding
-@code{_} or @code{^} before the opening parentheses, the direction
-is also set.
+The direction of a @notation{slur} can be specified with
+@code{\slurUp} or @code{\slurDown}. The @code{\slurNeutral}
+command reverts back to the default slur direction.
+@notation{Slurs} may be manually placed above or below the staff,
+see @ref{Direction and placement}.
-@lilypond[relative=2,ragged-right,quote,verbatim,fragment]
-c4_( c) c^( c)
+@lilypond[verbatim,quote,relative=2]
+c2( d)
+\slurDown
+c2( d)
+\slurNeutral
+c2( d)
@end lilypond
-Only one slur can be printed at once. If you need to print a long
-slur over a few small slurs, please see @ref{Phrasing slurs}.
+Different styles of @notation{slurs} may be created with the
+commands @code{\slurDashed} and @code{slurDotted};
+@code{\slurSolid} reverts back to the default @notation{slur}
+style:
-
-@commonprop
-
-Some composers write two slurs when they want legato chords. This
-can be achieved in LilyPond by setting @code{doubleSlurs},
-
-@lilypond[verbatim,ragged-right,relative,fragment,quote]
-\set doubleSlurs = ##t
-<c e>4 ( <d f> <c e> <d f> )
+@lilypond[verbatim,quote,relative=1]
+c4( e g2)
+\slurDashed
+g4( e c2)
+\slurDotted
+c4( e g2)
+\slurSolid
+g4( e c2)
@end lilypond
+Using this method, only one slur can be printed at once.
+@notation{Phrasing slurs} must be used to print a long slur over
+one or more small slurs. For details, see @ref{Phrasing slurs}.
-@refcommands
+
+@predefined
@funindex \slurUp
@code{\slurUp},
@funindex \slurSolid
@code{\slurSolid}.
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{using-double-slurs-for-legato-chords.ly}
+
+
@seealso
-Program reference: @internalsref{Slur}.
+Music Glossary:
+@rglos{slur}.
+
+Notation Reference:
+@ref{Direction and placement}.
+
+Snippets:
+@rlsr{Expressive marks}.
+
+Internals Reference:
+@rinternals{Slur}.
@node Phrasing slurs
-@unnumberedsubsubsec Phrasing slurs
+@subsubsection Phrasing slurs
@cindex phrasing slurs
@cindex phrasing marks
+@funindex \(
+@funindex \)
-A phrasing slur (or phrasing mark) connects notes and is used to
-indicate a musical sentence. It is written using @code{\(} and
-@code{\)} respectively:
+@notation{Phrasing slurs} (or @notation{phrasing marks}) that
+indicate a musical sentence are written using the commands
+@code{\(} and @code{\)} respectively:
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
-\time 6/4 c'\( d( e) f( e) d\)
+@lilypond[verbatim,quote,relative=2]
+c4\( d( e) f(
+e2) d\)
@end lilypond
-Typographically, the 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; instead,
-use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
-@code{\phrasingSlurNeutral}, or use the shorthands @code{_} and
-@code{^}.
+Typographically, a @notation{phrasing slur} behaves almost exactly
+like a normal @notation{slur}. However, they are treated as
+different objects; a @code{\slurUp} will have no effect on a
+@notation{phrasing slur}. The commands @code{\phrasingSlurUp},
+@code{\phrasingSlurDown}, and @code{\phrasingSlurNeutral} are used
+instead. Phrasing slurs 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
-You cannot have simultaneous phrasing slurs.
+Simultaneous phrasing slurs are not permitted.
-@refcommands
+@predefined
@funindex \phrasingSlurUp
@code{\phrasingSlurUp},
@seealso
-Program reference: @internalsref{PhrasingSlur}.
+Notation Reference:
+@ref{Direction and placement}.
+
+Snippets:
+@rlsr{Expressive marks}.
+
+Internals Reference:
+@rinternals{PhrasingSlur}.
@node Breath marks
-@unnumberedsubsubsec Breath marks
+@subsubsection Breath marks
-Breath marks are entered using @code{\breathe}
+@cindex breath marks
+@funindex \breathe
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-c'4 \breathe d4
+Breath marks are entered using @code{\breathe}:
+
+@lilypond[verbatim,quote,relative=2]
+c2. \breathe d4
@end lilypond
-@commonprop
+@snippets
-The glyph of the breath mark can be tuned by overriding the
-@code{text} property of the @code{BreathingSign} layout object
-with any markup text. For example,
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{changing-the-breath-mark-symbol.ly}
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
-c'4
-\override BreathingSign #'text
- = #(make-musicglyph-markup "scripts.rvarcomma")
-\breathe
-d4
-@end lilypond
@seealso
-Program reference: @internalsref{BreathingSign}.
+Snippets:
+@rlsr{Expressive marks}.
+@c @lsr{expressive,breathing-sign.ly}.
-Examples: @lsr{expressive,breathing-sign.ly}
+Internals Reference:
+@rinternals{BreathingSign}.
@node Falls and doits
-@unnumberedsubsubsec Falls and doits
+@subsubsection Falls and doits
+
+@cindex falls
+@cindex doits
+@funindex \bendAfter
-Falls and doits can be added to notes using the @code{\bendAfter}
-command,
+@notation{Falls} and @notation{doits} can be added to notes using
+the @code{\bendAfter} command:
-@lilypond[fragment,ragged-right,relative=2]
-\override Score.SpacingSpanner #'shortest-duration-space = #3.0
-c4-\bendAfter #+5
-c4-\bendAfter #-3
+@lilypond[verbatim,quote,relative=2]
+c2-\bendAfter #+4
+c2-\bendAfter #-4
+c2-\bendAfter #+8
+c2-\bendAfter #-8
@end lilypond
+The dash (@tie{-}) immediately preceding the @code{\bendAfter}
+command is @emph{required} when writing @notation{falls} and
+@notation{doits}.
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{adjusting-the-shape-of-falls-and-doits.ly}
+
+
+@seealso
+
+@c TODO: add falls and doits to glossary.
+@c Music Glossary:
+@c @rglos{falls},
+@c @rglos{doits}.
+
+Snippets:
+@rlsr{Expressive marks}.
+
+
@node Lines
@subsection Lines
* Glissando::
* Arpeggio::
* Trills::
-* Analysis brackets::
@end menu
@node Glissando
-@unnumberedsubsubsec Glissando
+@subsubsection Glissando
-@cindex Glissando
+@cindex glissando
@funindex \glissando
-A glissando is a smooth change in pitch. It is denoted by a line
-or a wavy line between two notes. It is requested by attaching
-@code{\glissando} to a note
+A @notation{glissando} is created by attaching @code{\glissando}
+to a note:
-@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
+@lilypond[verbatim,quote,relative=2]
c2\glissando c'
\override Glissando #'style = #'zigzag
c2\glissando c,
@end lilypond
-@commonprop
+@snippets
+
+@c Modify, add description, and put in input/new/
+@c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+@c {suppressing-warnings-for-clashing-note-columns.ly}
-@lilypond[quote,ragged-right,verbatim]
+@lilypond[verbatim,quote]
I = \once \override NoteColumn #'ignore-collision = ##t
-\relative <<
+\relative c' <<
{ \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
{ \oneVoice \I c2 \glissando \I d, }
>>
@end lilypond
-
@seealso
-Program reference: @internalsref{Glissando}.
+Music Glossary:
+@rglos{glissando}.
-Glossary: @rglos{falls}, @rglos{doits}
-Example files:
-@lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
+Snippets:
+@rlsr{Expressive marks}.
+@c FIXME: I need to figure out what's up with these. -gp
+@c @lsr{expressive,glissando.ly},
+@c @lsr{expressive,line-styles.ly}
-@refbugs
+Internals Reference:
+@rinternals{Glissando}.
+
+
+@knownissues
Printing text over the line (such as @emph{gliss.}) is not
supported.
@node Arpeggio
-@unnumberedsubsubsec Arpeggio
+@subsubsection Arpeggio
-@cindex Arpeggio
+@cindex arpeggio
@cindex broken chord
-@funindex \arpeggio
+@cindex chord, broken
-You can specify an arpeggio sign (also known as broken chord) on a
-chord by attaching an @code{\arpeggio} to the chord:
+An @notation{arpeggio} on a chord (also known as a
+@notation{broken chord}) is denoted by appending @code{\arpeggio}
+to the chord construct:
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-<c e g c>\arpeggio
+@lilypond[verbatim,quote,relative=1]
+<c e g c>1\arpeggio
@end lilypond
-A square bracket on the left is used to indicate that the chord should
-@emph{not} be arpeggiated:
-
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\arpeggioBracket
-<c' e g c>\arpeggio
-@end lilypond
+The direction of an @notation{arpeggio} is indicated by adding an
+arrowhead to the wiggly line. The commands @code{\arpeggioUp} and
+@code{\arpeggioDown} are used for this task.
+@code{\arpeggioNeutral} reverts back to an arrow-less
+@notation{arpeggio}:
-The direction of the arpeggio can be denoted by adding an
-arrowhead to the wiggly line. This is done with the commands
-@code{arpeggioUp} and @code{arpeggioDown}. @code{arpeggioNeutral}
-reverts to the arrow-less version:
-
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\new Voice {
- \arpeggioUp
- <c e g c>\arpeggio
- \arpeggioDown
- <c e g c>\arpeggio
- \arpeggioNeutral
- <c e g c>\arpeggio
-}
+@lilypond[verbatim,quote,relative=1]
+\arpeggioUp
+<c e g c>2\arpeggio
+\arpeggioDown
+<c e g c>2\arpeggio
+\arpeggioNeutral
+<c e g c>1\arpeggio
@end lilypond
+The command @code{\arpeggioBracket} can be used to create a square
+bracket on the left of a chord, indicating that the chord should
+@emph{not} be arpeggiated. @code{\arpeggioNeutral} reverts back
+to a regular arpeggio:
-@commonprop
-
-In a @code{PianoStaff}, it is possible to let an arpeggio cross
-between the staves by setting the property
-@internalsref{PianoStaff}.@code{connectArpeggios}.
-
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\new PianoStaff <<
- \set PianoStaff.connectArpeggios = ##t
- \new Staff { <c' e g c>\arpeggio }
- \new Staff { \clef bass <c,, e g>\arpeggio }
->>
+@lilypond[verbatim,quote,relative=1]
+<c e g c>2
+\arpeggioBracket
+<c e g c>2\arpeggio
+\arpeggioNeutral
+<c e g c>1\arpeggio
@end lilypond
-The same can be accomplished in contexts other than
-@code{PianoStaff} if the @code{Span_arpeggio_engraver} is included
-in the Score context.
-
-@lilypond[quote,ragged-right,verbatim]
-\score {
- \new StaffGroup {
- \set Score.connectArpeggios = ##t
- <<
- \new Voice \relative c' {
- <e g>4\arpeggio
- }
- \new Voice \relative c {
- \clef bass
- <c e>4\arpeggio
- }
- >>
- }
- \layout {
- \context {
- \Score
- \consists "Span_arpeggio_engraver"
- }
- }
-}
-@end lilypond
+A @emph{parenthesis} style bracket may be attached to an
+@notation{arpeggio} instead of a square bracket.
-Similarly, an arpeggio can be drawn across notes in
-different voices on the same staff if the Span_arpeggio_engraver
-is moved to the Staff context:
-
-@lilypond[quote,ragged-right,verbatim]
-\new Staff
-\with {
- \consists "Span_arpeggio_engraver"
-} \relative c' {
- \set Staff.connectArpeggios = ##t
- <<
- {<e' g>4\arpeggio <d f> <d f>2 }
- \\
- {<d, f>2\arpeggio <g b>2 }
- >>
-}
-@end lilypond
+@c Maybe create a new \arpeggioParen command, or something
+@c like that. -pm
+@lilypond[verbatim,quote,relative=1]
+<c e g c>2
+\override Arpeggio #'stencil = #ly:arpeggio::brew-chord-slur
+\override Arpeggio #'X-extent = #ly:grob::stencil-width
+<c e g c>2\arpeggio
+\arpeggioNeutral
+<c e g c>1\arpeggio
+@end lilypond
+@notation{Arpeggios} can be explicitly written out with
+@notation{ties}. For more information, see @ref{Ties}.
-@refcommands
+@predefined
+@funindex \arpeggio
@code{\arpeggio},
@funindex \arpeggioUp
@code{\arpeggioUp},
@code{\arpeggioBracket}.
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-cross-staff-arpeggios-in-a-piano-staff.ly}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-cross-staff-arpeggios-in-other-contexts.ly}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-arpeggios-across-notes-in-different-voices.ly}
+
+
@seealso
-Notation manual: @ref{Ties}, for writing out arpeggios.
+@c TODO: Add 'broken chord' to glossary.
+
+Music Glossary:
+@rglos{arpeggio}.
+
+Notation Reference:
+@ref{Ties}.
-Program reference: @internalsref{Arpeggio}.
+Snippets:
+@rlsr{Expressive marks}.
+Internals Reference:
+@rinternals{Arpeggio},
+@rinternals{PianoStaff}.
-@refbugs
+
+@knownissues
It is not possible to mix connected arpeggios and unconnected
-arpeggios in one @internalsref{PianoStaff} at the same point in
+arpeggios in one @code{PianoStaff} at the same point in
time.
@node Trills
-@unnumberedsubsubsec Trills
+@subsubsection Trills
+
+@cindex trills
+@funindex \trill
-Short trills are printed with @code{\trill} like normal
+Short @notation{trills} are printed with @code{\trill} like normal
articulation; see @ref{Articulations and ornamentations}.
-Long running trills are made with @code{\startTrillSpan} and
-@code{\stopTrillSpan}. In the following example, it is shown in
-the common combination with grace notes. If a more precise
-control of the placement of the grace notes is needed, see
-@ref{Grace notes}.
+Long running @notation{trills} are made with
+@code{\startTrillSpan} and @code{\stopTrillSpan}. In the
+following example, a long running @notation{trill} is shown
+combined with grace notes. To achieve precise control of the
+placement of the grace notes, see @ref{Grace notes}.
-@lilypond[verbatim,ragged-right,relative=2,quote,fragment]
-\relative c''
-{c1 \afterGrace
+@lilypond[verbatim,quote,relative=2]
+c1 \afterGrace
d1\startTrillSpan { c16[\stopTrillSpan d] }
-c4 }
+c4
@end lilypond
-@cindex Pitched trills
+@cindex pitched trills
+@cindex trills, pitched
+
+@notation{Trills} that should be executed on an explicitly
+specified pitch can be typeset with the command
+@code{\pitchedTrill} using the following syntax:
-Trills that should be executed on an explicitly specified pitch
-can be typeset with the command @code{pitchedTrill}, and the
-syntax @code{\pitchedTrill} @var{mainnote}@code{\startTrillSpan}
-@var{trillnote} @var{endnote} @code{\stopTrillSpan}.
+@example
+@code{\pitchedTrill} @var{mainnote} @code{\startTrillSpan}
+@var{trillnote} @var{endnote} @code{\stopTrillSpan}
+@end example
-@lilypond[ragged-right,verbatim,fragment,relative=1,quote]
+@lilypond[verbatim,quote,relative=1]
\pitchedTrill e2 \startTrillSpan fis
d\stopTrillSpan
@end lilypond
-
@noindent
The first argument is the main note. The pitch of the second is
printed as a stemless note head in parentheses.
-@refcommands
+@predefined
@code{\startTrillSpan},
@funindex \startTrillSpan
@seealso
-Program reference: @internalsref{TrillSpanner}.
-
-
-@node Analysis brackets
-@unnumberedsubsubsec Analysis brackets
-
-@cindex brackets
-@cindex phrasing brackets
-@cindex musicological analysis
-@cindex note grouping bracket
-
-Brackets are used in musical analysis to indicate structure in
-musical pieces. LilyPond supports a simple form of nested
-horizontal brackets. To use this, add the
-@internalsref{Horizontal_bracket_engraver} to the
-@internalsref{Staff} context. A bracket is started with
-@code{\startGroup} and closed with @code{\stopGroup}.
-
-@lilypond[quote,ragged-right,verbatim]
-\score {
- \relative c'' {
- c4\startGroup\startGroup
- c4\stopGroup
- c4\startGroup
- c4\stopGroup\stopGroup
- }
- \layout {
- \context {
- \Staff \consists "Horizontal_bracket_engraver"
-}}}
-@end lilypond
-
-@seealso
-
-Program reference: @internalsref{HorizontalBracket}.
-
+Music Glossary:
+@rglos{trill}.
+Snippets:
+@rlsr{Expressive marks}.
+Internals Reference:
+@rinternals{TrillSpanner}.