version that you are working on. See TRANSLATION for details.
@end ignore
+@c \version "2.12.0"
+
@node Expressive marks
@section Expressive marks
+@lilypondfile[quote]{expressive-headword.ly}
+
+This section lists various expressive marks that can be
+created in a score.
+
@menu
-* Attached to notes::
-* Curves::
-* Lines::
+* Attached to notes::
+* Curves::
+* Lines::
@end menu
@node Attached to notes
@subsection Attached to notes
+This section explains how to create expressive marks that are
+attached to notes: articulations, ornamentations, and dynamics.
+Methods to create new dynamic markings are also discussed.
@menu
-* Articulations::
-* Dynamics::
+* Articulations and ornamentations::
+* Dynamics::
+* New dynamic marks::
@end menu
-@node Articulations
-@unnumberedsubsubsec Articulations
+@node Articulations and ornamentations
+@unnumberedsubsubsec Articulations and ornamentations
-@cindex Articulations
+@cindex articulations
+@cindex ornamentation
@cindex scripts
@cindex ornaments
-
-A variety of symbols can appear above and below notes to indicate
-different characteristics of the performance. They are added to a
-note by adding a dash and the character signifying the
-articulation.
-
-See @ref{List of articulations}.
-
-@lilypond[quote,ragged-right,verbatim,fragment]
-\override TextScript #'font-family = #'typewriter
-\override TextScript #'font-shape = #'upright
-c''4-._"c-." s4
-c''4--_"c--" s4
-c''4-+_"c-+" s4
-c''4-|_"c-|" s4
-c''4->_"c->" s4
-c''4-^_"c-^" s4
-c''4-__"c-_" s4
-@end lilypond
-
-The meanings of these shorthands can be changed. See
-@file{ly/@/script@/-init@/.ly} for examples.
-
-The script is 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.
-
-@lilypond[quote,ragged-right,fragment,verbatim]
-c''4^^ c''4_^
-@end lilypond
-
-Other symbols can be added using the syntax
-@var{note}@code{\}@var{name}. Again, they
-can be forced up or down using @code{^} and @code{_},
-e.g.,
-
-@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
-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 organ pedal marks
+@cindex pedal marks, organ
@cindex turn
@cindex open
@cindex stopped
@cindex coda
@cindex varcoda
+@funindex -
-@commonprop
+A variety of symbols that denote articulations, ornamentations,
+and other performance indications can be attached to a note using
+this syntax:
-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.
+@example
+@var{note}\@var{name}
+@end example
-@lilypond[verbatim,relative=3,ragged-right,fragment,quote]
-\once \override TextScript #'script-priority = #-100
-a4^\prall^\markup { \sharp }
+The possible values for @var{name} are listed in @ref{List of
+articulations}. For example:
-\once \override Script #'script-priority = #-100
-a4^\prall^\markup { \sharp }
+@lilypond[verbatim,quote,relative=2]
+c4\staccato c\mordent b2\turn
+c1\fermata
@end lilypond
+@cindex marcato
+@cindex tenuto
+@cindex staccatissimo
+@cindex accent
+@cindex staccato
+@cindex portato
+
+Some of these articulations have shorthands for easier entry.
+Shorthands are appended to the note name, and their syntax
+consists of a dash @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-. c2-_
+@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}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-a-delayed-turn.ly}
@seealso
+Music Glossary:
+@rglos{tenuto},
+@rglos{accent},
+@rglos{staccato},
+@rglos{portato}.
-Program reference: @internalsref{Script}.
+Notation Reference:
+@ref{Direction and placement},
+@ref{List of articulations},
+@ref{Trills}.
+Installed Files:
+@file{scm/@/script@/.scm}.
-@refbugs
+Snippets:
+@rlsr{Expressive marks}.
-These signs appear in the printed output but have no effect on the
-MIDI rendering of the music.
+Internals Reference:
+@rinternals{Script},
+@rinternals{TextScript}.
@node Dynamics
@unnumberedsubsubsec Dynamics
-@cindex Dynamics
+@cindex absolute dynamics
+@cindex dynamics
+@cindex dynamics, absolute
+
+@funindex \ppppp
+@funindex ppppp
@funindex \pppp
+@funindex pppp
@funindex \ppp
+@funindex ppp
@funindex \pp
+@funindex pp
@funindex \p
+@funindex p
@funindex \mp
+@funindex mp
@funindex \mf
+@funindex mf
@funindex \f
+@funindex f
@funindex \ff
+@funindex ff
@funindex \fff
+@funindex fff
@funindex \ffff
+@funindex ffff
@funindex \fp
+@funindex fp
@funindex \sf
+@funindex sf
@funindex \sff
+@funindex sff
@funindex \sp
+@funindex sp
@funindex \spp
+@funindex spp
@funindex \sfz
+@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}.
-
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
-c\ppp c\pp c \p c\mp c\mf c\f c\ff c\fff
-c2\fp c\sf c\sff c\sp c\spp c\sfz c\rfz
+@funindex rfz
+
+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
+@cindex crescendo
+@cindex decrescendo
+@cindex diminuendo
+
@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{\>}. 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\! } >>
+@funindex \cr
+@funindex cr
+@funindex \decr
+@funindex decr
+
+A @notation{crescendo} mark is started with @code{\<} and
+terminated with @code{\!}, an absolute dynamic, or an additional
+crescendo or decrescendo mark. A @notation{decrescendo} mark is
+started with @code{\>} and is also terminated with @code{\!}, an
+absolute dynamic, or another crescendo or 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
-@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,
+Spacer rests are needed to engrave multiple marks on one note.
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-\set hairpinToBarline = ##f
-c4\< c2. c4\!
-@end lilypond
-
-In some situations the @code{\espressivo} articulation mark may
-be suitable to indicate a crescendo and decrescendo on the one note,
+@cindex multiple dynamic marks on one note
+@cindex dynamic marks, multiple 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
-This may give rise to very short hairpins. Use @code{minimum-length}
-in @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
-example
+@cindex espressivo articulation
-@example
-\override Voice.Hairpin #'minimum-length = #5
-@end example
-
-@cindex al niente
-@cindex niente, al
+@funindex \espressivo
+@funindex espressivo
-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 crescendo and 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 also use text saying @emph{cresc.} instead of hairpins
-
-@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
-\setTextCresc
-c\< d e f\!
-\setHairpinCresc
-e\> d c b\!
-\setTextDecresc
-c\> d e f\!
-\setTextDim
-e\> d c b\!
+@funindex \crescTextCresc
+@funindex crescTextCresc
+@funindex \dimTextDecresc
+@funindex dimTextDecresc
+@funindex \dimTextDecr
+@funindex dimTextDecr
+@funindex \dimTextDim
+@funindex dimTextDim
+@funindex \crescHairpin
+@funindex crescHairpin
+@funindex \dimHairpin
+@funindex dimHairpin
+
+Crescendos and decrescendos can be engraved as textual markings
+instead of hairpins. Dashed lines are printed to indicate their
+extent. The built-in commands that enable these text modes are
+@code{\crescTextCresc}, @code{\dimTextDecresc},
+@code{\dimTextDecr}, and @code{\dimTextDim}. The corresponding
+@code{\crescHairpin} and @code{\dimHairpin} commands will revert
+to hairpins again:
+
+@lilypond[verbatim,quote,relative=2]
+\crescTextCresc
+c2\< d | e f\!
+\dimTextDecresc
+e2\> d | c b\!
+\crescHairpin
+c2\< d | e f\!
+\dimHairpin
+e2\> d\!
@end lilypond
-You can also supply your own texts
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\set crescendoText = \markup { \italic "cresc. poco" }
-\set crescendoSpanner = #'dashed-line
-a'2\< a a a\!\mf
-@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}.
+@cindex dynamics, vertical positioning
+@cindex vertical positioning of dynamics
+@funindex 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.
+Vertical positioning of dynamics is handled by
+@rinternals{DynamicLineSpanner}.
+@funindex \dynamicUp
+@funindex dynamicUp
+@funindex \dynamicDown
+@funindex dynamicDown
+@funindex \dynamicNeutral
+@funindex dynamicNeutral
-@example
-\override DynamicLineSpanner #'staff-padding = #4
-@end example
-You may also use this property if the dynamics are colliding
-with other notation.
+@predefined
+@code{\dynamicUp},
+@code{\dynamicDown},
+@code{\dynamicNeutral},
+@code{\crescTextCresc},
+@code{\dimTextDim},
+@code{\dimTextDecr},
+@code{\dimTextDecresc},
+@code{\crescHairpin},
+@code{\dimHairpin}.
+@endpredefined
-Crescendi and decrescendi that end on the first note of a
-new line are not printed. To change this behavior, use
-@example
-\override Score.Hairpin #'after-line-breaking = ##t
-@end example
+@snippets
-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
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{setting-hairpin-behavior-at-bar-lines.ly}
-@example
-\override DynamicTextSpanner #'dash-period = #-1.0
-@end example
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{setting-the-minimum-length-of-hairpins.ly}
+@cindex al niente
+@cindex niente, al
-@refcommands
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{printing-hairpins-using-al-niente-notation.ly}
-@funindex \dynamicUp
-@code{\dynamicUp},
-@funindex \dynamicDown
-@code{\dynamicDown},
-@funindex \dynamicNeutral
-@code{\dynamicNeutral}.
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{vertically-aligned-dynamics-and-textscripts.ly}
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{hiding-the-extender-line-for-text-dynamics.ly}
-@seealso
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{changing-text-and-spanner-styles-for-text-dynamics.ly}
-Program reference: @internalsref{DynamicText}, @internalsref{Hairpin}.
-Vertical positioning of these symbols is handled by
-@internalsref{DynamicLineSpanner}.
+@seealso
+Music Glossary:
+@rglos{al niente},
+@rglos{crescendo},
+@rglos{decrescendo},
+@rglos{hairpin}.
-@node Curves
-@subsection Curves
+Learning Manual:
+@rlearning{Articulation and dynamics}.
-@menu
-* Ties::
-* Slurs::
-* Phrasing slurs::
-* Laissez vibrer ties::
-* Breath marks::
-* Falls and doits::
-@end menu
+Notation Reference:
+@ref{Direction and placement},
+@ref{New dynamic marks},
+@ref{What goes into the MIDI output?},
+@ref{Controlling MIDI dynamics}.
-@node Ties
-@unnumberedsubsubsec Ties
+Snippets:
+@rlsr{Expressive marks}.
-@cindex tie
-@funindex ~
+Internals Reference:
+@rinternals{DynamicText},
+@rinternals{Hairpin},
+@rinternals{DynamicLineSpanner}.
-A tie connects two adjacent note heads of the same pitch. The tie in
-effect extends the length of a note. Ties should not be confused with
-slurs, which indicate articulation, or phrasing slurs, which indicate
-musical phrasing. A tie is entered using the tilde symbol @samp{~}
-@lilypond[quote,ragged-right,fragment,verbatim]
-e' ~ e' <c' e' g'> ~ <c' e' g'>
-@end lilypond
+@node New dynamic marks
+@unnumberedsubsubsec New dynamic 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,
+@cindex new dynamic marks
+@cindex dynamic marks, new
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
-<c~ e g~ b> <c e g b>
-@end lilypond
+The easiest way to create dynamic indications is to use
+@code{\markup} objects.
-A tie is just a way of extending a note duration, similar to the
-augmentation dot. The following example shows two ways of notating
-exactly the same concept
+@lilypond[verbatim,quote]
+moltoF = \markup { molto \dynamic f }
-@lilypond[quote,fragment,ragged-right]
-\time 3/4 c'2. c'2 ~ c'4
+\relative c' {
+ <d e>16_\moltoF <d e>
+ <d e>2..
+}
@end lilypond
-@noindent
-Ties are used either when the note crosses a bar line, or when dots
-cannot be used to denote the rhythm. When using ties, larger note
-values should be aligned to subdivisions of the measure, such as
-
-@lilypond[fragment,quote,ragged-right]
-\relative {
- r8 c8 ~ c2 r4 | r8^"not" c2 ~ c8 r4
+@cindex dynamics, editorial
+@cindex dynamics, parenthesis
+@cindex editorial dynamics
+@funindex \bracket
+@funindex bracket
+@funindex \dynamic
+@funindex dynamic
+
+In markup mode, editorial dynamics (within parentheses or square
+brackets) can be created. The syntax for markup mode is described
+in @ref{Formatting text}.
+
+@lilypond[verbatim,quote]
+roundF = \markup { \center-align \concat { \bold { \italic ( }
+ \dynamic f \bold { \italic ) } } }
+boxF = \markup { \bracket { \dynamic f } }
+\relative c' {
+ c1_\roundF
+ c1_\boxF
}
@end lilypond
-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.
-
-@funindex \repeatTie
+@cindex make-dynamic-script
+@funindex make-dynamic-script
-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},
+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}.
-@lilypond[fragment,quote,ragged-right,relative=2]
-r <c e g>\repeatTie
+@lilypond[verbatim,quote]
+sfzp = #(make-dynamic-script "sfzp")
+\relative c' {
+ c4 c c\sfzp c
+}
@end lilypond
-@cindex repeating ties
-@cindex volta brackets and ties
-
-@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. For example,
-
-@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
+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.
+
+@lilypond[verbatim,quote]
+roundF = \markup { \center-align \concat {
+ \normal-text { \bold { \italic ( } }
+ \dynamic f
+ \normal-text { \bold { \italic ) } } } }
+boxF = \markup { \bracket { \dynamic f } }
+roundFdynamic = #(make-dynamic-script roundF)
+boxFdynamic = #(make-dynamic-script boxF)
+\relative c' {
+ c4_\roundFdynamic\< d e f
+ g,1_\boxFdynamic
+}
@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).
+The Scheme form of markup mode may be used instead. Its syntax is
+explained in @ref{Markup construction in Scheme}.
-@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> |
+@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}.
+Font settings in markup mode are described in
+@ref{Selecting font and font size}.
@seealso
+Notation Reference:
+@ref{Formatting text},
+@ref{Selecting font and font size},
+@ref{Markup construction in Scheme},
+@ref{What goes into the MIDI output?},
+@ref{Controlling MIDI dynamics}.
-In this manual: @ref{Automatic note splitting}.
-
-Program reference: @internalsref{Tie}.
-
+Snippets:
+@rlsr{Expressive marks}.
-@refbugs
-Switching staves when a tie is active will not produce a slanted tie.
+@node Curves
+@subsection Curves
-Changing clefs or octavations during a tie is not really
-well-defined. In these cases, a slur may be preferable.
+This section explains how to create various expressive marks that
+are curved: normal slurs, phrasing slurs, breath marks, falls, and
+doits.
+@menu
+* Slurs::
+* Phrasing slurs::
+* Breath marks::
+* Falls and doits::
+@end menu
@node Slurs
@unnumberedsubsubsec 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
-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).
+@cindex slurs, manual placement
+@cindex slurs, below notes
+@cindex slurs, above notes
+@funindex \slurDown
+@funindex slurDown
+@funindex \slurNeutral
+@funindex slurNeutral
-However, there is a convenient shorthand for forcing slur
-directions. By adding @code{_} or @code{^} before the opening
-parentheses, the direction is also set. For example,
+Slurs may be manually placed above or below the notes, 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}.
-
-
-@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> )
+@cindex phrasing slur
+@cindex multiple slurs
+@cindex simultaneous slurs
+@cindex slur, phrasing
+@cindex slurs, multiple
+@cindex slurs, simultaneous
+
+Simultaneous or overlapping slurs are not permitted, but a phrasing
+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
+@funindex \slurDashed
+@funindex slurDashed
+@funindex \slurDotted
+@funindex slurDotted
+@funindex \slurSolid
+@funindex slurSolid
+
+Slurs can be solid, dotted, or dashed. Solid is the default slur
+style:
+
+@lilypond[verbatim,quote,relative=1]
+c4( e g2)
+\slurDashed
+g4( e c2)
+\slurDotted
+c4( e g2)
+\slurSolid
+g4( e c2)
@end lilypond
+@funindex \slurUp
+@funindex slurUp
-@refcommands
-@funindex \slurUp
+@predefined
@code{\slurUp},
-@funindex \slurDown
@code{\slurDown},
-@funindex \slurNeutral
@code{\slurNeutral},
-@funindex \slurDashed
@code{\slurDashed},
-@funindex \slurDotted
@code{\slurDotted},
-@funindex \slurSolid
@code{\slurSolid}.
+@endpredefined
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{using-double-slurs-for-legato-chords.ly}
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{positioning-text-markups-inside-slurs.ly}
@seealso
+Music Glossary:
+@rglos{slur}.
+
+Learning Manual:
+@rlearning{On the un-nestedness of brackets and ties}.
+
+Notation Reference:
+@ref{Direction and placement},
+@ref{Phrasing slurs}.
+
+Snippets:
+@rlsr{Expressive marks}.
-Program reference: @internalsref{Slur}.
+Internals Reference:
+@rinternals{Slur}.
@node Phrasing slurs
@cindex phrasing slurs
@cindex phrasing marks
-
-A phrasing slur (or phrasing mark) connects notes and is used to
-indicate a musical sentence. It is written using @code{\(} and @code{\)}
-respectively
-
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
-\time 6/4 c'\( d( e) f( e) d\)
+@cindex slur, phrasing
+@cindex mark, phrasing
+@funindex \(
+@funindex \)
+
+@notation{Phrasing slurs} (or phrasing marks) that indicate a
+musical sentence are written using the commands @code{\(} and
+@code{\)} respectively:
+
+@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}.
-
-You cannot have simultaneous phrasing slurs.
+@funindex \phrasingSlurUp
+@funindex phrasingSlurUp
+@funindex \phrasingSlurDown
+@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
+@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
+
+Simultaneous or overlapping phrasing slurs are not permitted.
+
+Phrasing slurs can be solid, dotted, or dashed. Solid is the default
+style for phrasing slurs:
+
+@lilypond[verbatim,quote,relative=1]
+c4\( e g2\)
+\phrasingSlurDashed
+g4\( e c2\)
+\phrasingSlurDotted
+c4\( e g2\)
+\phrasingSlurSolid
+g4\( e c2\)
+@end lilypond
-@refcommands
-@funindex \phrasingSlurUp
+@predefined
@code{\phrasingSlurUp},
-@funindex \phrasingSlurDown
@code{\phrasingSlurDown},
-@funindex \phrasingSlurNeutral
-@code{\phrasingSlurNeutral}.
+@code{\phrasingSlurNeutral},
+@code{\phrasingSlurDashed},
+@code{\phrasingSlurDotted},
+@code{\phrasingSlurSolid}.
+@endpredefined
@seealso
+Learning Manual:
+@rlearning{On the un-nestedness of brackets and ties}.
-Program reference: @internalsref{PhrasingSlur}.
+Notation Reference:
+@ref{Direction and placement}.
+Snippets:
+@rlsr{Expressive marks}.
-@node Laissez vibrer ties
-@unnumberedsubsubsec Laissez vibrer ties
-@cindex Laissez vibrer
-@cindex Ties, laissez vibrer
+Internals Reference:
+@rinternals{PhrasingSlur}.
-L.v. ties (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[fragment,ragged-right,verbatim,relative=1]
-<c f g>\laissezVibrer
-@end lilypond
+@node Breath marks
+@unnumberedsubsubsec Breath marks
-@seealso
+@cindex breath marks
+@cindex pause mark
+@funindex \breathe
+@funindex breathe
-Program reference:
-@internalsref{LaissezVibrerTie}
-@internalsref{LaissezVibrerTieColumn}
+Breath marks are entered using @code{\breathe}:
-Example files:
-@lsr{connecting,laissez-vibrer-ties.ly}
+@lilypond[verbatim,quote,relative=2]
+c2. \breathe d4
+@end lilypond
+Musical indicators for breath marks in ancient notation,
+divisiones, are supported. For details, see @ref{Divisiones}.
-@node Breath marks
-@unnumberedsubsubsec Breath marks
-Breath marks are entered using @code{\breathe}
+@snippets
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-c'4 \breathe d4
-@end lilypond
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{changing-the-breath-mark-symbol.ly}
+@cindex caesura
+@cindex railroad tracks
-@commonprop
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{inserting-a-caesura.ly}
-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,
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
-c'4
-\override BreathingSign #'text
- = #(make-musicglyph-markup "scripts.rvarcomma")
-\breathe
-d4
-@end lilypond
@seealso
+Music Glossary:
+@rglos{caesura}.
+
+Notation Reference:
+@ref{Divisiones}.
-Program reference: @internalsref{BreathingSign}.
+Snippets:
+@rlsr{Expressive marks}.
-Examples: @lsr{expressive,breathing-sign.ly}
+Internals Reference:
+@rinternals{BreathingSign}.
@node Falls and doits
@unnumberedsubsubsec Falls and doits
-Falls and 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
+@cindex falls
+@cindex doits
+@funindex \bendAfter
+@funindex bendAfter
+
+@notation{Falls} and @notation{doits} can be added to notes using
+the @code{\bendAfter} command. The direction of the fall or doit
+is indicated with a plus or minus (up or down). The number
+indicates the pitch interval that the fall or doit will extend
+@emph{beyond} the main note.
+
+@lilypond[verbatim,quote,relative=2]
+c2-\bendAfter #+4
+c2-\bendAfter #-4
+c2-\bendAfter #+8
+c2-\bendAfter #-8
@end lilypond
+The dash @code{-} immediately preceding the @code{\bendAfter}
+command is @emph{required} when writing falls and doits.
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{adjusting-the-shape-of-falls-and-doits.ly}
+
+
+@seealso
+Music Glossary:
+@rglos{fall},
+@rglos{doit}.
+
+Snippets:
+@rlsr{Expressive marks}.
+
@node Lines
@subsection Lines
+This section explains how to create various expressive marks that
+follow a linear path: glissandos, arpeggios, and trills.
+
@menu
-* Glissando::
-* Arpeggio::
-* Trills::
-* Analysis brackets::
+* Glissando::
+* Arpeggio::
+* Trills::
@end menu
@node Glissando
@unnumberedsubsubsec Glissando
-@cindex Glissando
+@cindex glissando
@funindex \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]
-c2\glissando c'
-\override Glissando #'style = #'zigzag
+@lilypond[verbatim,quote,relative=2]
+g2\glissando g'
c2\glissando c,
@end lilypond
+Different styles of glissandi can be created. For details, see
+@ref{Line styles}.
-@commonprop
-
-@lilypond[quote,ragged-right,verbatim]
-I = \once \override NoteColumn #'ignore-collision = ##t
-
-\relative <<
- { \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
- { \oneVoice \I c2 \glissando \I d, }
->>
-@end lilypond
+@snippets
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{contemporary-glissando.ly}
@seealso
+Music Glossary:
+@rglos{glissando}.
+
+Notation Reference:
+@ref{Line styles}.
-Program reference: @internalsref{Glissando}.
+Snippets:
+@rlsr{Expressive marks}.
-Example files:
-@lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
+Internals Reference:
+@rinternals{Glissando}.
-@refbugs
+@knownissues
-Printing text over the line (such as @emph{gliss.}) is not supported.
+Printing text over the line (such as @notation{gliss.}) is not
+supported.
@node Arpeggio
@unnumberedsubsubsec 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 a chord
+@funindex \arpeggio
+@funindex arpeggio
+@funindex \arpeggioArrowUp
+@funindex arpeggioArrowUp
+@funindex \arpeggioArrowDown
+@funindex arpeggioArrowDown
+@funindex \arpeggioNormal
+@funindex arpeggioNormal
+
+An @notation{arpeggio} on a chord (also known as a broken chord)
+is denoted by appending @code{\arpeggio} to the chord construct:
+
+@lilypond[verbatim,quote,relative=1]
+<c e g c>1\arpeggio
+@end lilypond
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-<c e g c>\arpeggio
+Different types of arpeggios may be written.
+@code{\arpeggioNormal} reverts to a normal arpeggio:
+
+@lilypond[verbatim,quote,relative=1]
+<c e g c>2\arpeggio
+\arpeggioArrowUp
+<c e g c>2\arpeggio
+\arpeggioArrowDown
+<c e g c>2\arpeggio
+\arpeggioNormal
+<c e g c>2\arpeggio
@end lilypond
-A square bracket on the left indicates that the player should not
-arpeggiate the chord
+@cindex arpeggio symbols, special
+@cindex special arpeggio symbols
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\arpeggioBracket
-<c' e g c>\arpeggio
-@end lilypond
+@funindex \arpeggioBracket
+@funindex arpeggioBracket
+@funindex \arpeggioParenthesis
+@funindex arpeggioParenthesis
-The direction of the arpeggio is sometimes denoted by adding an
-arrowhead to the wiggly line
+Special @emph{bracketed} arpeggio symbols can be created:
-@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
-\new Voice {
- \arpeggioUp
- <c e g c>\arpeggio
- \arpeggioDown
- <c e g c>\arpeggio
-}
+@lilypond[verbatim,quote,relative=1]
+<c e g c>2
+\arpeggioBracket
+<c e g c>2\arpeggio
+\arpeggioParenthesis
+<c e g c>2\arpeggio
+\arpeggioNormal
+<c e g c>2\arpeggio
@end lilypond
+Arpeggios can be explicitly written out with ties. For more
+information, see @ref{Ties}.
-@commonprop
-When an arpeggio crosses staves, you may attach an arpeggio to the chords
-in both staves and set
-@internalsref{PianoStaff}.@code{connectArpeggios}
+@predefined
+@code{\arpeggio},
+@code{\arpeggioArrowUp},
+@code{\arpeggioArrowDown},
+@code{\arpeggioNormal},
+@code{\arpeggioBracket},
+@code{\arpeggioParenthesis}.
+@endpredefined
-@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 }
->>
-@end lilypond
-@c TODO: cross-voice arpeggio example?
-@c such an example is already in LSR -J.Mandereau
+@snippets
-@refcommands
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-cross-staff-arpeggios-in-a-piano-staff.ly}
-@code{\arpeggio},
-@funindex \arpeggioUp
-@code{\arpeggioUp},
-@funindex \arpeggioDown
-@code{\arpeggioDown},
-@funindex \arpeggioNeutral
-@code{\arpeggioNeutral},
-@funindex \arpeggioBracket
-@code{\arpeggioBracket}.
+@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
+Music Glossary:
+@rglos{arpeggio}.
-Notation manual: @ref{Ties}, for writing out arpeggios.
+Notation Reference:
+@ref{Ties}.
-Program reference: @internalsref{Arpeggio}.
+Snippets:
+@rlsr{Expressive marks}.
+Internals Reference:
+@rinternals{Arpeggio},
+@rinternals{PianoStaff}.
-@refbugs
+
+@knownissues
+
+@cindex cross-staff parenthesis-style arpeggio
+@cindex arpeggio, parenthesis-style, cross-staff
+@cindex arpeggio, cross-staff parenthesis-style
It is not possible to mix connected arpeggios and unconnected
-arpeggios in one @internalsref{PianoStaff} at the same point in time.
+arpeggios in one @code{PianoStaff} at the same point in
+time.
+
+The parenthesis-style arpeggio brackets do not work for
+cross-staff arpeggios.
@node Trills
@unnumberedsubsubsec Trills
-Short trills are printed like normal articulation; see @ref{Articulations}.
+@cindex trills
-Long running trills are made with @code{\startTrillSpan} and
-@code{\stopTrillSpan},
+@funindex \trill
+@funindex trill
+@funindex \startTrillSpan
+@funindex startTrillSpan
+@funindex \stopTrillSpan
+@funindex stopTrillSpan
-@lilypond[verbatim,ragged-right,relative=2,quote,fragment]
-\new Voice {
- << { c1 \startTrillSpan }
- { s2. \grace { d16[\stopTrillSpan e] } } >>
- c4 }
-@end lilypond
+Short @notation{trills} without an extender line are printed with
+@code{\trill}; see @ref{Articulations and ornamentations}.
-@cindex Pitched trills
+Longer trills with an extender line are made with
+@code{\startTrillSpan} and @code{\stopTrillSpan}:
-Trills that should be executed on an explicitly specified pitch can be
-typeset with the command @code{pitchedTrill},
+@lilypond[verbatim,quote,relative=2]
+d1~\startTrillSpan
+d1
+c2\stopTrillSpan r2
+@end lilypond
+
+In the following example, a trill is combined with grace notes.
+The syntax of this construct and the method to precisely position
+the grace notes are described in @ref{Grace notes}.
-@lilypond[ragged-right,verbatim,fragment,relative=1,quote]
-\pitchedTrill c4\startTrillSpan fis
-f\stopTrillSpan
+@lilypond[verbatim,quote,relative=2]
+c1 \afterGrace
+d1\startTrillSpan { c32[ d]\stopTrillSpan }
+e2 r2
@end lilypond
-@noindent
-The first argument is the main note. The pitch of the second
-is printed as a stemless note head in parentheses.
+@cindex pitched trills
+@cindex trills, pitched
+@funindex \pitchedTrill
+@funindex pitchedTrill
+Trills that require an auxiliary note with an explicit pitch can
+be typeset with the @code{\pitchedTrill} command. The first
+argument is the main note, and the second is the @emph{trilled}
+note, printed as a stemless note head in parentheses.
-@refcommands
+@lilypond[verbatim,quote,relative=1]
+\pitchedTrill e2\startTrillSpan fis
+d\stopTrillSpan
+@end lilypond
-@code{\startTrillSpan},
-@funindex \startTrillSpan
-@code{\stopTrillSpan}.
-@funindex \stopTrillSpan
+@cindex pitched trill with forced accidental
+@cindex trill, pitched with forced accidental
+@cindex accidental, forced for pitched trill
+
+In the following example, the second pitched trill is ambiguous;
+the accidental of the trilled note is not printed. As a
+workaround, the accidentals of the trilled notes can be forced.
+The second measure illustrates this method:
+
+@lilypond[verbatim,quote,relative=2]
+\pitchedTrill eis4\startTrillSpan fis
+g\stopTrillSpan
+\pitchedTrill eis4\startTrillSpan fis
+g\stopTrillSpan
+\pitchedTrill eis4\startTrillSpan fis
+g\stopTrillSpan
+\pitchedTrill eis4\startTrillSpan fis!
+g\stopTrillSpan
+@end lilypond
-@seealso
+@predefined
+@code{\startTrillSpan},
+@code{\stopTrillSpan}.
+@endpredefined
-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 @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
+Music Glossary:
+@rglos{trill}.
-Program reference: @internalsref{HorizontalBracket}.
+Notation Reference:
+@ref{Articulations and ornamentations},
+@ref{Grace notes}.
+Snippets:
+@rlsr{Expressive marks}.
+Internals Reference:
+@rinternals{TrillSpanner}.