X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fuser%2Fexpressive.itely;h=807370f24a045586840095a6e8f26549fbb5fb1d;hb=729be9e5d4b59916e2c76ebfadbbf29e31d47584;hp=4f07dbbbed42efd6351beaba08e73e1ec882c049;hpb=88fba829571b89fe189e6b7ac5784126d498c088;p=lilypond.git diff --git a/Documentation/user/expressive.itely b/Documentation/user/expressive.itely index 4f07dbbbed..807370f24a 100644 --- a/Documentation/user/expressive.itely +++ b/Documentation/user/expressive.itely @@ -6,11 +6,12 @@ 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,ragged-right,line-width=16\cm,staffsize=16] -{expressive-headword.ly} +@lilypondfile[quote]{expressive-headword.ly} @menu * Attached to notes:: @@ -22,10 +23,10 @@ @node Attached to notes @subsection Attached to notes - @menu * Articulations and ornamentations:: * Dynamics:: +* New dynamic marks:: @end menu @node Articulations and ornamentations @@ -35,46 +36,51 @@ @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}. +A variety of symbols that denote articulations, ornamentations, +and other performance indications can be attached to a note using +this syntax: -The possible values for @var{name} are listed in @ref{List of -articulations}. +@example +@var{note}\@var{name} +@end example -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: +The possible values for @var{name} are listed in @ref{List of +articulations}. For example: @lilypond[verbatim,quote,ragged-right,fragment,relative=2] -c4-. c-- c-+ c-| -c-> c-^ c-_ +c4\staccato c\mordent b2\turn +c1\fermata @end lilypond -The marks are automatically placed, but the direction can be -forced as well. Like other pieces of LilyPond code, -@code{_}@tie{}will place them below the staff, and@tie{}@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 direction signs replace it: +@cindex marcato +@cindex stopped +@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 (@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,ragged-right,fragment,relative=2] -c4^^ c4_^ -c\fermata c^\fermata c_\fermata +c4-^ c-+ c-- c-| +c-> 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{Controlling direction and placement}. -@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 @@ -97,15 +103,19 @@ c\fermata c^\fermata c_\fermata @cindex varcoda -@commonprop +@snippets + +@c Send these snippets to Valentin for the LSR. -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 shorthands are defined in @file{ly/@/script@/-init@/.ly}, +where the variables @code{dashHat}, @code{dashPlus}, +@code{dashDash}, @code{dashBar}, @code{dashLarger}, +@code{dashDot}, and @code{dashUnderscore} are assigned default +values. The default values for the shorthands can be modified. +For example, to associate the @code{-+} (@code{dashPlus}) +shorthand with the @notation{trill} symbol instead of the default +@notation{+} symbol, assign the value @code{trill} to the variable +@code{dashPlus}: @lilypond[verbatim,quote,ragged-right] \relative c'' { c-+ } @@ -118,7 +128,7 @@ The vertical ordering of scripts is controlled with the closer it will be put to the note. In this example, the @code{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 @code{Script}) has the +second, the @notation{prall trill} (the @code{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. @@ -134,13 +144,16 @@ a4^\prall^\markup { \sharp } @seealso +Music Glossary: @rglos{tenuto}, @rglos{accent}, @rglos{staccato}, +@rglos{portato}. + Snippets: @lsrdir{Expressive,Expressive-marks} Internals Reference: @internalsref{Script}, @internalsref{TextScript}. -@refbugs +@knownissues These signs appear in the printed output but have no effect on the MIDI rendering of the music. @@ -173,9 +186,9 @@ like @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@tie{}@code{_} and@tie{}@code{^}, -just like articulation marks. +@code{\sfz}, and @code{\rfz}. The dynamic marks may be manually +placed above or below the staff, see @ref{Controlling direction +and placement}. @lilypond[verbatim,quote,ragged-right,fragment,relative=2] c2\ppp c\mp @@ -183,16 +196,20 @@ c\rfz c^\mf c_\spp c_\staccato^\ff @end lilypond +@cindex hairpin @funindex \< @funindex \> @funindex \! +@funindex \cr +@funindex \decr -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. +A @notation{crescendo} mark is started with @code{\<} and +terminated with @code{\!} or an absolute dynamic. A +@notation{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 +@notation{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. @@ -202,21 +219,19 @@ c\< c\! d\> e\! << f1 { s4 s4\< s4\! \> s4\! } >> @end lilypond -This may give rise to very short hairpins. To lengthen them, use -for example @code{minimum-length} in -@internalsref{Voice}.@internalsref{Hairpin}: +This may give rise to very short hairpins. To lengthen them, the +following code can be used, 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 bar line. This may be modified by setting the -@code{hairpinToBarline} property: -@cindex hairpin +A @notation{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 @notation{hairpin} ends +on the immediately preceding bar line. The following example +illustrates this behavior: @lilypond[verbatim,quote,ragged-right,fragment,relative=2] e4\< e2. e1\! @@ -225,6 +240,7 @@ e4\< e2. e1\! @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: @@ -235,8 +251,7 @@ c2 b4 a g1\espressivo @cindex al niente @cindex niente, al -Hairpins may be printed with a circled tip (al niente notation) by -setting the @code{circled-tip} property: +Hairpins may be printed with a circled tip (al niente notation): @lilypond[verbatim,quote,ragged-right,fragment,relative=2] \override Hairpin #'circled-tip = ##t @@ -247,12 +262,19 @@ c4\> c\< c2\! @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: +@funindex \setTextCresc +@funindex \setTextDim +@funindex \setTextDecresc +@funindex \setHairpinCresc +@funindex \setHairpinDim +@funindex \setHairpinDecresc + +You can use text saying @notation{cresc.}, @notation{decr.}, or +@notation{dim.} instead of hairpins with the commands +@code{\setTextCresc}, @code{\setTextDim}, and +@code{\setTextDecresc}. The corresponding +@code{\setHairpinCresc}, @code{\setHairpinDim}, and +@code{\setHairpinDecresc} will revert to hairpins again: @lilypond[verbatim,quote,ragged-right,fragment,relative=2] \setTextCresc @@ -287,7 +309,7 @@ Vertical positioning of dynamics is handled by @internalsref{DynamicLineSpanner}. -@refcommands +@predefined @funindex \dynamicUp @code{\dynamicUp}, @@ -297,7 +319,7 @@ Vertical positioning of dynamics is handled by @code{\dynamicNeutral}. -@commonprop +@snippets Dynamics that occur at, begin on, or end on the same note will be vertically aligned. If you want to ensure that dynamics are @@ -312,18 +334,18 @@ the @code{staff-padding} property. 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 +@notation{Crescendi} and @notation{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 +Text style dynamic changes (such as @notation{cresc.} and +@notation{dim.}) are printed with a dashed line showing their +extent. To suppress printing this line, use @example \override DynamicTextSpanner #'dash-period = #-1.0 @@ -332,8 +354,9 @@ printing this line, use @seealso -Music Glossary: @rglos{hairpin}, @rglos{crescendo}, -@rglos{decrescendo}. +@c TODO: Add hairpin to glossary. + +Music Glossary: @rglos{crescendo}, @rglos{decrescendo}. Learning Manual: @rlearning{Articulation and dynamics}. @@ -344,6 +367,47 @@ Internals Reference: @internalsref{DynamicText}, handled by @internalsref{DynamicLineSpanner}. +@node New dynamic marks +@subsubsection New dynamic marks + +It is possible to print new dynamic marks or text that should be +aligned with dynamics. Use @code{make-dynamic-script} to create +these marks. Note that the dynamic font only contains the +characters @code{f,m,p,r,s} and @code{z}. + +Some situations (such as dynamic marks) have preset font-related +properties. If you are creating text in such situations, it is +advisable to cancel those properties with @code{normal-text}. See +@ref{Text markup commands}, for more details. + +@cindex make-dynamic-script + +@lilypond[quote,verbatim,ragged-right] +sfzp = #(make-dynamic-script "sfzp") +\relative c' { + c4 c c\sfzp c +} +@end lilypond + +@cindex Dynamics, editorial +@cindex Dynamics, parenthesis + +It is also possible to print dynamics in round parenthesis or +square brackets. These are often used for adding editorial +dynamics. + +@lilypond[quote,verbatim,ragged-right] +rndf = \markup{ \center-align {\line { \bold{\italic (} + \dynamic f \bold{\italic )} }} } +boxf = \markup{ \bracket { \dynamic f } } +{ c'1_\rndf c'1_\boxf } +@end lilypond + +@seealso + +Snippets: @lsrdir{Expressive,Expressive-marks} + + @node Curves @subsection Curves @@ -359,7 +423,7 @@ handled by @internalsref{DynamicLineSpanner}. @cindex slurs -A slur indicates that notes are to be played bound or +A @notation{slur} indicates that notes are to be played bound or @emph{legato}. They are entered using parentheses: @lilypond[verbatim,quote,ragged-right,fragment,relative=2] @@ -369,20 +433,19 @@ f( g a) a8 b( a4 g2 f4) 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@tie{}@code{_} or@tie{}@code{^} before the opening -parentheses, the direction is also set. +@code{Up}, @code{Down}, or @code{Neutral} (@code{Neutral} is the +default). Slurs may be manually placed above or below the staff, +see @ref{Controlling direction and placement}. @lilypond[verbatim,quote,ragged-right,fragment,relative=2] c4_( c) c^( c) @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}. +Using this method, only one slur can be printed at once. To print +a long slur over a few small slurs, see @ref{Phrasing slurs}. -@refcommands +@predefined @funindex \slurUp @code{\slurUp}, @@ -398,7 +461,7 @@ slur over a few small slurs, please see @ref{Phrasing slurs}. @code{\slurSolid}. -@commonprop +@snippets Some composers write two slurs when they want legato chords. This can be achieved in LilyPond by setting @code{doubleSlurs}, @@ -411,6 +474,8 @@ can be achieved in LilyPond by setting @code{doubleSlurs}, @seealso +Music Glossary: @rglos{slur} + Snippets: @lsrdir{Expressive,Expressive-marks} Internals Reference: @internalsref{Slur}. @@ -421,6 +486,8 @@ Internals Reference: @internalsref{Slur}. @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 @@ -434,13 +501,14 @@ 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@tie{}@code{_} -and@tie{}@code{^}. +@code{\phrasingSlurNeutral}. Phrasing slurs may be manually +placed above or below the staff, see @ref{Controlling direction +and placement}. You cannot have simultaneous phrasing slurs. -@refcommands +@predefined @funindex \phrasingSlurUp @code{\phrasingSlurUp}, @@ -454,12 +522,15 @@ You cannot have simultaneous phrasing slurs. Snippets: @lsrdir{Expressive,Expressive-marks} -Internals Reference: @internalsref{PhrasingSlur}. +Internals Reference: @internalsref{PhrasingSlur} @node Breath marks @subsubsection Breath marks +@cindex breath marks +@funindex \breathe + Breath marks are entered using @code{\breathe}: @lilypond[verbatim,quote,ragged-right,fragment,relative=1] @@ -467,7 +538,7 @@ c'4 \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 @@ -481,18 +552,42 @@ c'4 d4 @end lilypond + @seealso -Snippets: @lsrdir{Expressive,Expressive-marks}, @c @lsr{expressive,breathing-sign.ly}. +Snippets: @lsrdir{Expressive,Expressive-marks} +@c @lsr{expressive,breathing-sign.ly}. -Internals Reference: @internalsref{BreathingSign}. +Internals Reference: @internalsref{BreathingSign} @node Falls and doits @subsubsection Falls and doits -Falls and doits can be added to notes using the @code{\bendAfter} -command, +@cindex falls +@cindex doits +@funindex \bendAfter + +@notation{Falls} and @notation{doits} can be added to notes using +the @code{\bendAfter} command: + +@lilypond[verbatim,quote,ragged-right,fragment,relative=2] +c2-\bendAfter #+4 +c-\bendAfter #-4 +c-\bendAfter #+8 +c-\bendAfter #-8 +@end lilypond + +The dash (@tie{-}) following the note name is @emph{required} when +writing @notation{falls} and @notation{doits}. + + +@snippets + +The @code{shortest-duration-space} property may have to be tweaked +to adjust the shape of @notation{falls} and @notation{doits}. + +@c Fix this snippet. The tweak does not work. -pm @lilypond[verbatim,quote,ragged-right,fragment,relative=2] \override Score.SpacingSpanner #'shortest-duration-space = #3.0 @@ -500,6 +595,15 @@ c4-\bendAfter #+5 c4-\bendAfter #-3 @end lilypond + +@seealso + +@c TODO: add falls and doits to glossary. +@c Music Glossary: @rglos{falls}, @rglos{doits}. + +Snippets: @lsrdir{Expressive,Expressive-marks} + + @node Lines @subsection Lines @@ -515,9 +619,10 @@ c4-\bendAfter #-3 @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 a smooth change in pitch. It is denoted +by a line or a wavy line between two notes. A +@notation{glissando} is created by attaching @code{\glissando} to +a note: @lilypond[verbatim,quote,ragged-right,fragment,relative=2] c2\glissando c' @@ -525,8 +630,8 @@ c2\glissando c' c2\glissando c, @end lilypond -@commonprop +@snippets @lilypond[verbatim,quote,ragged-right] I = \once \override NoteColumn #'ignore-collision = ##t @@ -538,21 +643,20 @@ I = \once \override NoteColumn #'ignore-collision = ##t @end lilypond - @seealso -Music Glossary: @rglos{falls}, @rglos{doits}. +Music Glossary: @rglos{glissando} -Snippets: @lsrdir{Expressive,Expressive-marks}. +Snippets: @lsrdir{Expressive,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} -Internals Reference: @internalsref{Glissando}. +Internals Reference: @internalsref{Glissando} -@refbugs +@knownissues Printing text over the line (such as @emph{gliss.}) is not supported. @@ -563,17 +667,18 @@ supported. @cindex arpeggio @cindex broken chord -@funindex \arpeggio -You can specify an arpeggio sign (also known as broken chord) on a -chord by attaching an @code{\arpeggio} to the chord: +You can specify an @notation{arpeggio} (also known as a +@notation{broken chord}) on a chord by attaching an +@code{\arpeggio} to the chord: @lilypond[verbatim,quote,ragged-right,fragment,relative=1] \arpeggio @end lilypond -A square bracket on the left is used to indicate that the chord -should @emph{not} be arpeggiated: +A square bracket on the left, denoted by @code{\arpeggioBracket}, +is used to indicate that the chord should @emph{not} be +arpeggiated: @lilypond[verbatim,quote,ragged-right,fragment,relative=1] \arpeggioBracket @@ -597,8 +702,9 @@ reverts to the arrow-less version: @end lilypond -@refcommands +@predefined +@funindex \arpeggio @code{\arpeggio}, @funindex \arpeggioUp @code{\arpeggioUp}, @@ -610,7 +716,7 @@ reverts to the arrow-less version: @code{\arpeggioBracket}. -@commonprop +@snippets In a @code{PianoStaff}, it is possible to let an arpeggio cross between the staves by setting the property @@ -672,6 +778,10 @@ moved to the Staff context: @seealso +@c TODO: Add 'broken chord' to glossary. + +Music Glossary: @rglos{arpeggio} + Notation Reference: @ref{Ties}, for writing out arpeggios. Snippets: @lsrdir{Expressive,Expressive-marks} @@ -680,7 +790,7 @@ Internals Reference: @internalsref{Arpeggio}, @internalsref{PianoStaff}. -@refbugs +@knownissues It is not possible to mix connected arpeggios and unconnected arpeggios in one @code{PianoStaff} at the same point in @@ -690,14 +800,17 @@ time. @node Trills @subsubsection Trills -Short trills are printed with @code{\trill} like normal +@cindex trills +@funindex \trill + +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,quote,ragged-right,fragment,relative=2] c1 \afterGrace @@ -707,10 +820,14 @@ c4 @cindex pitched trills -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}. +@notation{Trills} that should be executed on an explicitly +specified pitch can be typeset with the command +@code{\pitchedTrill} using the following syntax: + +@example +@code{\pitchedTrill} @var{mainnote} @code{\startTrillSpan} +@var{trillnote} @var{endnote} @code{\stopTrillSpan} +@end example @lilypond[verbatim,quote,ragged-right,fragment,relative=1] \pitchedTrill e2 \startTrillSpan fis @@ -722,7 +839,7 @@ 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 @@ -732,6 +849,8 @@ printed as a stemless note head in parentheses. @seealso +Music Glossary: @rglos{trill} + Snippets: @lsrdir{Expressive,Expressive-marks} -Internals Reference: @internalsref{TrillSpanner}. +Internals Reference: @internalsref{TrillSpanner}