]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/user/expressive.itely
Reorg, educational->editorial.
[lilypond.git] / Documentation / user / expressive.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2 @ignore
3     Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
4
5     When revising a translation, copy the HEAD committish of the
6     version that you are working on.  See TRANSLATION for details.
7 @end ignore
8
9 @node Expressive marks
10 @section Expressive marks
11
12 @menu
13 * Attached to notes::           
14 * Curves::                      
15 * Lines::                       
16 @end menu
17
18
19 @node Attached to notes
20 @subsection Attached to notes
21
22
23 @menu
24 * Articulations and ornamentations::  
25 * Dynamics::                    
26 @end menu
27
28 @node Articulations and ornamentations
29 @unnumberedsubsubsec Articulations and ornamentations
30
31 @cindex Articulations
32 @cindex scripts
33 @cindex ornaments
34
35 A variety of symbols can appear above and below notes to indicate
36 different characteristics of the performance.  All these symbols
37 can be attached to a note using the syntax @var{note}@code{\}@var{name}. 
38
39 The possible values for @var{name} are listed in @ref{List of
40 articulations}.
41
42 Some of these articulations have shorthands for easier entry.  They
43 are used by adding a dash and the character signifying
44 the articulation to the note name.  The available shorthands and
45 their output are:
46
47 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
48 c4-.  c--   c-+   c-|   
49 c->   c-^   c-_         
50 @end lilypond
51
52 The marks are automatically placed, but the direction can be
53 forced as well.  Like other pieces of LilyPond code, @code{_} will
54 place them below the staff, and @code{^} will place them above.
55 This applies both to the shorthands and the fully named
56 articulations.  For the shorthands, the dash itself should be
57 omitted; the shorthand signs replace it:
58
59 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
60 c4^^ c4_^
61 c\fermata c^\fermata c_\fermata
62 @end lilypond
63
64
65 @cindex accent
66 @cindex marcato
67 @cindex staccatissimo
68 @cindex espressivo
69 @cindex fermata
70 @cindex stopped
71 @cindex staccato
72 @cindex portato
73 @cindex tenuto
74 @cindex upbow
75 @cindex downbow
76 @cindex foot marks
77 @cindex organ pedal marks
78 @cindex turn
79 @cindex open
80 @cindex stopped
81 @cindex flageolet
82 @cindex reverseturn
83 @cindex trill
84 @cindex prall
85 @cindex mordent
86 @cindex prallprall
87 @cindex prallmordent
88 @cindex prall, up
89 @cindex prall, down
90 @cindex thumb marking
91 @cindex segno
92 @cindex coda
93 @cindex varcoda
94
95
96 @commonprop
97
98 The meanings of the shorthands can be changed.  They are defined
99 in @file{ly/@/script@/-init@/.ly}, where the variables  
100 @code{DashDot}, @code{DashDash}, @code{DashPlus}, @code{DashBar},
101 @code{DashLarger}, @code{DashHat}, and @code{DashUnderscore}
102 are associated with the default articulation marks.  If you want,
103 e.g., @code{-+} to produce a trill instead of a "+", you can
104 redefine the variable in your document:
105
106 @lilypond[quote,ragged-right,verbatim]
107 \relative c'' { c-+ }       
108 dashPlus = "trill"
109 \relative c'' { c-+ }       
110 @end lilypond
111
112 The vertical ordering of scripts is controlled with the
113 @code{script-priority} property.  The lower this number, the
114 closer it will be put to the note.  In this example, the
115 @internalsref{TextScript} (the sharp symbol) first has the lowest
116 priority, so it is put lowest in the first example.  In the
117 second, the prall trill (the @internalsref{Script}) has the
118 lowest, so it is on the inside.  When two objects have the same
119 priority, the order in which they are entered decides which one
120 comes first.
121
122
123 @commonprop
124
125 The meanings of the shorthands can be changed.  They are defined
126 in @file{ly/@/script@/-init@/.ly}, where the variables  
127 @code{DashDot}, @code{DashDash}, @code{DashPlus}, @code{DashBar},
128 @code{DashLarger}, @code{DashHat}, and @code{DashUnderscore}
129 are associated with the default articulation marks.  If you want,
130 e.g., @code{-+} to produce a trill instead of a "+", you can
131 redefine the variable in your document:
132
133 @lilypond[quote,ragged-right,verbatim]
134 \relative c'' { c-+ }       
135 dashPlus = "trill"
136 \relative c'' { c-+ }       
137 @end lilypond
138
139 The vertical ordering of scripts is controlled with the
140 @code{script-priority} property.  The lower this number, the
141 closer it will be put to the note.  In this example, the
142 @internalsref{TextScript} (the sharp symbol) first has the lowest
143 priority, so it is put lowest in the first example.  In the
144 second, the prall trill (the @internalsref{Script}) has the
145 lowest, so it is on the inside.  When two objects have the same
146 priority, the order in which they are entered decides which one
147 comes first.
148
149 @lilypond[verbatim,relative=3,ragged-right,fragment,quote]
150 \once \override TextScript #'script-priority = #-100
151 a4^\prall^\markup { \sharp }
152
153 \once \override Script #'script-priority = #-100
154 a4^\prall^\markup { \sharp }
155 @end lilypond
156
157
158 @seealso
159
160 Internals Reference: @internalsref{Script}.
161
162
163 @refbugs
164
165 These signs appear in the printed output but have no effect on the
166 MIDI rendering of the music.
167
168
169 @node Dynamics
170 @unnumberedsubsubsec Dynamics
171
172 @cindex Dynamics
173 @funindex \pppp
174 @funindex \ppp
175 @funindex \pp
176 @funindex \p
177 @funindex \mp
178 @funindex \mf
179 @funindex \f
180 @funindex \ff
181 @funindex \fff
182 @funindex \ffff
183 @funindex \fp
184 @funindex \sf
185 @funindex \sff
186 @funindex \sp
187 @funindex \spp
188 @funindex \sfz
189 @funindex \rfz
190
191 Absolute dynamic marks are specified using a command after a note
192 @code{c4\ff}.  The available dynamic marks are @code{\ppppp},
193 @code{\pppp}, @code{\ppp}, @code{\pp}, @code{\p}, @code{\mp},
194 @code{\mf}, @code{\f}, @code{\ff}, @code{\fff}, @code{\ffff},
195 @code{\fp}, @code{\sf}, @code{\sff}, @code{\sp}, @code{\spp},
196 @code{\sfz}, and @code{\rfz}.  The dynamic marks can be placed
197 above or below the staff with @code{_} and @code{^}, just like
198 articulation marks. 
199
200 @lilypond[quote,verbatim,ragged-right,fragment,relative=2]
201 c2\ppp c\mp 
202 c\rfz c^\mf
203 c_\spp c_\staccato^\ff
204 @end lilypond
205
206 @funindex \<
207 @funindex \>
208 @funindex \!
209
210 A crescendo mark is started with @code{\<} and terminated with
211 @code{\!} or an absolute dynamic.  A decrescendo is started with
212 @code{\>} and is also terminated with @code{\!} or an absolute
213 dynamic.  @code{\cr} and @code{\decr} may be used instead of
214 @code{\<} and @code{\>}.  They can be engraved either using a
215 graphical sign (a @q{hairpin}), or with textual signs.
216
217 Because these marks are bound to notes, you must use spacer notes
218 if multiple marks are needed during one note.
219
220 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
221 c\< c\! d\> e\!
222 << f1 { s4 s4\< s4\! \> s4\! } >>
223 @end lilypond
224
225 This may give rise to very short hairpins.  Use
226 @code{minimum-length} in
227 @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
228 example:
229
230 @example
231 \override Voice.Hairpin #'minimum-length = #5
232 @end example
233
234 @noindent
235 A hairpin normally starts at the left edge of the beginning note
236 and ends on the right edge of the ending note.  If the ending note
237 falls on the downbeat, the hairpin ends on the immediately
238 preceding barline.  This may be modified by setting the
239 @code{hairpinToBarline} property,
240 @cindex Hairpin
241
242 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
243 e4\< e2. e1\!
244 \set hairpinToBarline = ##f
245 e4\< e2. e1\!
246 @end lilypond
247
248 @cindex espressivo, articulation
249 In some situations the @code{\espressivo} articulation mark may be
250 suitable to indicate a crescendo and decrescendo on the one note:
251
252 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
253 c2 b4 a g1\espressivo
254 @end lilypond
255
256 @cindex al niente
257 @cindex niente, al
258
259 Hairpins may be printed with a circled tip (al niente notation) by
260 setting the @code{circled-tip} property:
261
262 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
263 \override Hairpin #'circled-tip = ##t
264 c2\< c\!
265 c4\> c\< c2\!
266 @end lilypond
267
268
269 @cindex crescendo
270 @cindex decrescendo
271 @cindex diminuendo
272
273 You can use text saying @emph{cresc.}, @emph{decr.}, or
274 @emph{dim.} instead of hairpins with the commands \setTextCresc,
275 \setTextDim, and \setTextDecresc.  The corresponding
276 \setHairpinCresc, \setHairpinDim, and \setHairpinDecresc will
277 revert to hairpins again: 
278
279 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
280 \setTextCresc
281 c\< d e f\!
282 \setHairpinCresc
283 e\> d c b\!
284 \setTextDecresc
285 c\> d e f\!
286 \setTextDim
287 e\> d c b\!
288 @end lilypond
289
290 You can also supply your own texts and change the style of the
291 spanner line with the properties @code{\crescendoText},
292 @code{\crescendoSpanner}, @code{\decrescendoText}, and
293 @code{\decrescendoSpanner}. Available values for the spanner
294 properties are @code{hairpin}, @code{line}, @code{dashed-line},
295 and @code{dotted-line}. If unset, a hairpin crescendo is used:
296
297 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
298 \set crescendoText = \markup { \italic "cresc. poco" }
299 \set crescendoSpanner = #'dotted-line
300 a'2\< a a a a a a a\!\mf
301 @end lilypond
302
303
304 To create new dynamic marks or text that should be aligned with
305 dynamics, see @ref{New dynamic marks}.
306
307 Vertical positioning of dynamics is handled by
308 @internalsref{DynamicLineSpanner}.
309
310
311 @commonprop
312
313 Dynamics that occur at, begin on, or end on the same note will be
314 vertically aligned.  If you want to ensure that dynamics are
315 aligned when they do not occur on the same note, you can increase
316 the @code{staff-padding} property.
317
318 @example
319 \override DynamicLineSpanner #'staff-padding = #4
320 @end example
321
322 You may also use this property if the dynamics are colliding with
323 other notation.
324
325 Crescendi and decrescendi that cross a line break will be
326 continued on the second line.  If they end on the first note of a
327 new line, nothing will be printed on that line.  To change this
328 behavior, use
329
330 @example
331 \override Score.Hairpin #'after-line-breaking = ##t
332 @end example
333
334 Text style dynamic changes (such as @emph{cresc.} and @emph{dim.})
335 are printed with a dashed line showing their extent.  To surpress
336 printing this line, use
337
338 @example
339 \override DynamicTextSpanner #'dash-period = #-1.0
340 @end example
341
342
343 @refcommands
344
345 @funindex \dynamicUp
346 @code{\dynamicUp},
347 @funindex \dynamicDown
348 @code{\dynamicDown},
349 @funindex \dynamicNeutral
350 @code{\dynamicNeutral}.
351
352
353 @seealso
354
355 Internals Reference: @internalsref{DynamicText},
356 @internalsref{Hairpin}.  Vertical positioning of these symbols is
357 handled by @internalsref{DynamicLineSpanner}.
358 Glossary: @rglos{Hairpin}, @rglos{crescendo}, @rglos{decrescendo}
359
360 @c TODO: add link to LM directions
361
362
363 @node Curves
364 @subsection Curves
365
366 @menu
367 * Slurs::                       
368 * Phrasing slurs::              
369 * Breath marks::                
370 * Falls and doits::             
371 @end menu
372
373 @node Slurs
374 @unnumberedsubsubsec Slurs
375
376 @cindex Slurs
377
378 A slur indicates that notes are to be played bound or
379 @emph{legato}.  They are entered using parentheses:
380
381 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
382 f( g a) a8 b( a4 g2 f4)
383 <c e>2( <b d>2)
384 @end lilypond
385
386 Just as with ties, the direction of a slur can be specified with
387 @code{\slur@emph{DIR}}, where @code{@emph{DIR}} is either
388 @code{Up}, @code{Down}, or @code{Neutral} (automatically
389 selected).  The shorthands are also available: by adding
390 @code{_} or @code{^} before the opening parentheses, the direction
391 is also set.  
392
393 @lilypond[relative=2,ragged-right,quote,verbatim,fragment]
394 c4_( c) c^( c)
395 @end lilypond
396
397 Only one slur can be printed at once.  If you need to print a long
398 slur over a few small slurs, please see @ref{Phrasing slurs}.
399
400
401 @commonprop
402
403 Some composers write two slurs when they want legato chords.  This
404 can be achieved in LilyPond by setting @code{doubleSlurs},
405
406 @lilypond[verbatim,ragged-right,relative,fragment,quote]
407 \set doubleSlurs = ##t
408 <c e>4 ( <d f> <c e> <d f> )
409 @end lilypond
410
411
412 @refcommands
413
414 @funindex \slurUp
415 @code{\slurUp},
416 @funindex \slurDown
417 @code{\slurDown},
418 @funindex \slurNeutral
419 @code{\slurNeutral},
420 @funindex \slurDashed
421 @code{\slurDashed},
422 @funindex \slurDotted
423 @code{\slurDotted},
424 @funindex \slurSolid
425 @code{\slurSolid}.
426
427 @seealso
428
429 Internals Reference: @internalsref{Slur}.
430
431
432 @node Phrasing slurs
433 @unnumberedsubsubsec Phrasing slurs
434
435 @cindex phrasing slurs
436 @cindex phrasing marks
437
438 A phrasing slur (or phrasing mark) connects notes and is used to
439 indicate a musical sentence.  It is written using @code{\(} and
440 @code{\)} respectively:
441
442 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
443 \time 6/4 c'\( d( e) f( e) d\)
444 @end lilypond
445
446 Typographically, the phrasing slur behaves almost exactly like a
447 normal slur.  However, they are treated as different objects.  A
448 @code{\slurUp} will have no effect on a phrasing slur; instead,
449 use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
450 @code{\phrasingSlurNeutral}, or use the shorthands @code{_} and
451 @code{^}.
452
453 You cannot have simultaneous phrasing slurs.
454
455
456 @refcommands
457
458 @funindex \phrasingSlurUp
459 @code{\phrasingSlurUp},
460 @funindex \phrasingSlurDown
461 @code{\phrasingSlurDown},
462 @funindex \phrasingSlurNeutral
463 @code{\phrasingSlurNeutral}.
464
465
466 @seealso
467
468 Internals Reference: @internalsref{PhrasingSlur}.
469
470
471 @node Breath marks
472 @unnumberedsubsubsec Breath marks
473
474 Breath marks are entered using @code{\breathe}
475
476 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
477 c'4 \breathe d4
478 @end lilypond
479
480
481 @commonprop
482
483 The glyph of the breath mark can be tuned by overriding the
484 @code{text} property of the @code{BreathingSign} layout object
485 with any markup text.  For example,
486
487 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
488 c'4
489 \override BreathingSign #'text
490   = #(make-musicglyph-markup "scripts.rvarcomma")
491 \breathe
492 d4
493 @end lilypond
494
495 @seealso
496
497 Internals Reference: @internalsref{BreathingSign}.
498
499 Examples: @lsr{expressive,breathing-sign.ly}
500
501
502 @node Falls and doits
503 @unnumberedsubsubsec Falls and doits
504
505 Falls and doits can be added to notes using the @code{\bendAfter}
506 command,
507
508 @lilypond[fragment,ragged-right,relative=2]
509 \override Score.SpacingSpanner #'shortest-duration-space = #3.0
510 c4-\bendAfter #+5
511 c4-\bendAfter #-3
512 @end lilypond
513
514 @node Lines
515 @subsection Lines
516
517 @menu
518 * Glissando::                   
519 * Arpeggio::                    
520 * Trills::                      
521 @end menu
522
523 @node Glissando
524 @unnumberedsubsubsec Glissando
525
526 @cindex Glissando
527 @funindex \glissando
528
529 A glissando is a smooth change in pitch.  It is denoted by a line
530 or a wavy line between two notes.  It is requested by attaching
531 @code{\glissando} to a note
532
533 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
534 c2\glissando c'
535 \override Glissando #'style = #'zigzag
536 c2\glissando c,
537 @end lilypond
538
539 @commonprop
540
541
542 @lilypond[quote,ragged-right,verbatim]
543 I = \once \override NoteColumn #'ignore-collision = ##t
544
545 \relative <<
546   { \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
547   { \oneVoice \I c2 \glissando \I d, }
548 >>
549 @end lilypond
550
551
552
553 @seealso
554
555 Internals Reference: @internalsref{Glissando}.
556
557 Glossary: @rglos{falls}, @rglos{doits}
558 Example files:
559 @lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
560
561
562 @refbugs
563
564 Printing text over the line (such as @emph{gliss.}) is not
565 supported.
566
567
568 @node Arpeggio
569 @unnumberedsubsubsec Arpeggio
570
571 @cindex Arpeggio
572 @cindex broken chord
573 @funindex \arpeggio
574
575 You can specify an arpeggio sign (also known as broken chord) on a
576 chord by attaching an @code{\arpeggio} to the chord:
577
578 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
579 <c e g c>\arpeggio
580 @end lilypond
581
582 A square bracket on the left is used to indicate that the chord should
583 @emph{not} be arpeggiated:
584
585 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
586 \arpeggioBracket
587 <c' e g c>\arpeggio
588 @end lilypond
589
590 The direction of the arpeggio can be denoted by adding an
591 arrowhead to the wiggly line. This is done with the commands
592 @code{arpeggioUp} and @code{arpeggioDown}. @code{arpeggioNeutral}
593 reverts to the arrow-less version:
594
595 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
596 \new Voice {
597   \arpeggioUp
598   <c e g c>\arpeggio
599   \arpeggioDown
600   <c e g c>\arpeggio
601   \arpeggioNeutral
602   <c e g c>\arpeggio
603 }
604 @end lilypond
605
606
607 @commonprop
608
609 In a @code{PianoStaff}, it is possible to let an arpeggio cross
610 between the staves by setting the property
611 @internalsref{PianoStaff}.@code{connectArpeggios}. 
612
613 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
614 \new PianoStaff <<
615   \set PianoStaff.connectArpeggios = ##t
616   \new Staff { <c' e g c>\arpeggio }
617   \new Staff { \clef bass <c,, e g>\arpeggio }
618 >>
619 @end lilypond
620
621 The same can be accomplished in contexts other than
622 @code{PianoStaff} if the @code{Span_arpeggio_engraver} is included
623 in the Score context.
624
625 @lilypond[quote,ragged-right,verbatim]
626 \score {
627   \new StaffGroup {
628     \set Score.connectArpeggios = ##t
629     <<
630       \new Voice \relative c' {
631         <e g>4\arpeggio
632       }
633       \new Voice  \relative c {
634         \clef bass
635         <c e>4\arpeggio
636       }
637     >>
638   }
639   \layout {
640     \context {
641       \Score 
642       \consists "Span_arpeggio_engraver"
643     } 
644   }
645 }
646 @end lilypond
647
648 Similarly,  an arpeggio can be drawn across notes in
649 different voices on the same staff if the Span_arpeggio_engraver
650 is moved to the Staff context:
651
652 @lilypond[quote,ragged-right,verbatim]
653 \new Staff
654 \with {
655   \consists "Span_arpeggio_engraver"
656 } \relative c' {
657   \set Staff.connectArpeggios = ##t
658     <<
659     {<e' g>4\arpeggio <d f> <d f>2 }
660   \\
661   {<d, f>2\arpeggio  <g b>2  }
662   >>
663 }
664 @end lilypond
665
666
667
668 @refcommands
669
670 @code{\arpeggio},
671 @funindex \arpeggioUp
672 @code{\arpeggioUp},
673 @funindex \arpeggioDown
674 @code{\arpeggioDown},
675 @funindex \arpeggioNeutral
676 @code{\arpeggioNeutral},
677 @funindex \arpeggioBracket
678 @code{\arpeggioBracket}.
679
680
681 @seealso
682
683 Notation manual: @ref{Ties}, for writing out arpeggios.
684
685 Internals Reference: @internalsref{Arpeggio}.
686
687
688 @refbugs
689
690 It is not possible to mix connected arpeggios and unconnected
691 arpeggios in one @internalsref{PianoStaff} at the same point in
692 time.
693
694
695 @node Trills
696 @unnumberedsubsubsec Trills
697
698 Short trills are printed with @code{\trill} like normal
699 articulation; see @ref{Articulations and ornamentations}.
700
701 Long running trills are made with @code{\startTrillSpan} and
702 @code{\stopTrillSpan}. In the following example, it is shown in
703 the common combination with grace notes.  If a more precise
704 control of the placement of the grace notes is needed, see
705 @ref{Grace notes}.
706
707 @lilypond[verbatim,ragged-right,relative=2,quote,fragment]
708 \relative c''
709 {c1 \afterGrace 
710 d1\startTrillSpan { c16[\stopTrillSpan d] }
711 c4 }
712 @end lilypond
713
714 @cindex Pitched trills
715
716 Trills that should be executed on an explicitly specified pitch
717 can be typeset with the command @code{pitchedTrill}, and the
718 syntax @code{\pitchedTrill} @var{mainnote}@code{\startTrillSpan}
719 @var{trillnote} @var{endnote} @code{\stopTrillSpan}.
720
721 @lilypond[ragged-right,verbatim,fragment,relative=1,quote]
722 \pitchedTrill e2 \startTrillSpan fis
723 d\stopTrillSpan
724 @end lilypond
725
726
727 @noindent
728 The first argument is the main note.  The pitch of the second is
729 printed as a stemless note head in parentheses.
730
731
732 @refcommands
733
734 @code{\startTrillSpan},
735 @funindex \startTrillSpan
736 @code{\stopTrillSpan}.
737 @funindex \stopTrillSpan
738
739
740 @seealso
741
742 Internals Reference: @internalsref{TrillSpanner}.
743
744
745
746