]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/user/expressive.itely
Formatting from Ralph; thanks!
[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 Snippets: @lsrdir{expressive}
161
162 Internals Reference: @internalsref{Script}.
163
164
165 @refbugs
166
167 These signs appear in the printed output but have no effect on the
168 MIDI rendering of the music.
169
170
171 @node Dynamics
172 @unnumberedsubsubsec Dynamics
173
174 @cindex Dynamics
175 @funindex \pppp
176 @funindex \ppp
177 @funindex \pp
178 @funindex \p
179 @funindex \mp
180 @funindex \mf
181 @funindex \f
182 @funindex \ff
183 @funindex \fff
184 @funindex \ffff
185 @funindex \fp
186 @funindex \sf
187 @funindex \sff
188 @funindex \sp
189 @funindex \spp
190 @funindex \sfz
191 @funindex \rfz
192
193 Absolute dynamic marks are specified using a command after a note
194 @code{c4\ff}.  The available dynamic marks are @code{\ppppp},
195 @code{\pppp}, @code{\ppp}, @code{\pp}, @code{\p}, @code{\mp},
196 @code{\mf}, @code{\f}, @code{\ff}, @code{\fff}, @code{\ffff},
197 @code{\fp}, @code{\sf}, @code{\sff}, @code{\sp}, @code{\spp},
198 @code{\sfz}, and @code{\rfz}.  The dynamic marks can be placed
199 above or below the staff with @code{_} and @code{^}, just like
200 articulation marks. 
201
202 @lilypond[quote,verbatim,ragged-right,fragment,relative=2]
203 c2\ppp c\mp 
204 c\rfz c^\mf
205 c_\spp c_\staccato^\ff
206 @end lilypond
207
208 @funindex \<
209 @funindex \>
210 @funindex \!
211
212 A crescendo mark is started with @code{\<} and terminated with
213 @code{\!} or an absolute dynamic.  A decrescendo is started with
214 @code{\>} and is also terminated with @code{\!} or an absolute
215 dynamic.  @code{\cr} and @code{\decr} may be used instead of
216 @code{\<} and @code{\>}.  They can be engraved either using a
217 graphical sign (a @q{hairpin}), or with textual signs.
218
219 Because these marks are bound to notes, you must use spacer notes
220 if multiple marks are needed during one note.
221
222 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
223 c\< c\! d\> e\!
224 << f1 { s4 s4\< s4\! \> s4\! } >>
225 @end lilypond
226
227 This may give rise to very short hairpins.  Use
228 @code{minimum-length} in
229 @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
230 example:
231
232 @example
233 \override Voice.Hairpin #'minimum-length = #5
234 @end example
235
236 @noindent
237 A hairpin normally starts at the left edge of the beginning note
238 and ends on the right edge of the ending note.  If the ending note
239 falls on the downbeat, the hairpin ends on the immediately
240 preceding barline.  This may be modified by setting the
241 @code{hairpinToBarline} property,
242 @cindex Hairpin
243
244 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
245 e4\< e2. e1\!
246 \set hairpinToBarline = ##f
247 e4\< e2. e1\!
248 @end lilypond
249
250 @cindex espressivo, articulation
251 In some situations the @code{\espressivo} articulation mark may be
252 suitable to indicate a crescendo and decrescendo on the one note:
253
254 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
255 c2 b4 a g1\espressivo
256 @end lilypond
257
258 @cindex al niente
259 @cindex niente, al
260
261 Hairpins may be printed with a circled tip (al niente notation) by
262 setting the @code{circled-tip} property:
263
264 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
265 \override Hairpin #'circled-tip = ##t
266 c2\< c\!
267 c4\> c\< c2\!
268 @end lilypond
269
270
271 @cindex crescendo
272 @cindex decrescendo
273 @cindex diminuendo
274
275 You can use text saying @emph{cresc.}, @emph{decr.}, or
276 @emph{dim.} instead of hairpins with the commands \setTextCresc,
277 \setTextDim, and \setTextDecresc.  The corresponding
278 \setHairpinCresc, \setHairpinDim, and \setHairpinDecresc will
279 revert to hairpins again: 
280
281 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
282 \setTextCresc
283 c\< d e f\!
284 \setHairpinCresc
285 e\> d c b\!
286 \setTextDecresc
287 c\> d e f\!
288 \setTextDim
289 e\> d c b\!
290 @end lilypond
291
292 You can also supply your own texts and change the style of the
293 spanner line with the properties @code{\crescendoText},
294 @code{\crescendoSpanner}, @code{\decrescendoText}, and
295 @code{\decrescendoSpanner}. Available values for the spanner
296 properties are @code{hairpin}, @code{line}, @code{dashed-line},
297 and @code{dotted-line}. If unset, a hairpin crescendo is used:
298
299 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
300 \set crescendoText = \markup { \italic "cresc. poco" }
301 \set crescendoSpanner = #'dotted-line
302 a'2\< a a a a a a a\!\mf
303 @end lilypond
304
305
306 To create new dynamic marks or text that should be aligned with
307 dynamics, see @ref{New dynamic marks}.
308
309 Vertical positioning of dynamics is handled by
310 @internalsref{DynamicLineSpanner}.
311
312
313 @commonprop
314
315 Dynamics that occur at, begin on, or end on the same note will be
316 vertically aligned.  If you want to ensure that dynamics are
317 aligned when they do not occur on the same note, you can increase
318 the @code{staff-padding} property.
319
320 @example
321 \override DynamicLineSpanner #'staff-padding = #4
322 @end example
323
324 You may also use this property if the dynamics are colliding with
325 other notation.
326
327 Crescendi and decrescendi that cross a line break will be
328 continued on the second line.  If they end on the first note of a
329 new line, nothing will be printed on that line.  To change this
330 behavior, use
331
332 @example
333 \override Score.Hairpin #'after-line-breaking = ##t
334 @end example
335
336 Text style dynamic changes (such as @emph{cresc.} and @emph{dim.})
337 are printed with a dashed line showing their extent.  To surpress
338 printing this line, use
339
340 @example
341 \override DynamicTextSpanner #'dash-period = #-1.0
342 @end example
343
344
345 @refcommands
346
347 @funindex \dynamicUp
348 @code{\dynamicUp},
349 @funindex \dynamicDown
350 @code{\dynamicDown},
351 @funindex \dynamicNeutral
352 @code{\dynamicNeutral}.
353
354
355 @seealso
356
357 Snippets: @lsrdir{expressive}
358
359 Internals Reference: @internalsref{DynamicText},
360 @internalsref{Hairpin}.  Vertical positioning of these symbols is
361 handled by @internalsref{DynamicLineSpanner}.
362 Glossary: @rglos{Hairpin}, @rglos{crescendo}, @rglos{decrescendo}
363
364 @c TODO: add link to LM directions
365
366
367 @node Curves
368 @subsection Curves
369
370 @menu
371 * Slurs::                       
372 * Phrasing slurs::              
373 * Breath marks::                
374 * Falls and doits::             
375 @end menu
376
377 @node Slurs
378 @unnumberedsubsubsec Slurs
379
380 @cindex Slurs
381
382 A slur indicates that notes are to be played bound or
383 @emph{legato}.  They are entered using parentheses:
384
385 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
386 f( g a) a8 b( a4 g2 f4)
387 <c e>2( <b d>2)
388 @end lilypond
389
390 Just as with ties, the direction of a slur can be specified with
391 @code{\slur@emph{DIR}}, where @code{@emph{DIR}} is either
392 @code{Up}, @code{Down}, or @code{Neutral} (automatically
393 selected).  The shorthands are also available: by adding
394 @code{_} or @code{^} before the opening parentheses, the direction
395 is also set.  
396
397 @lilypond[relative=2,ragged-right,quote,verbatim,fragment]
398 c4_( c) c^( c)
399 @end lilypond
400
401 Only one slur can be printed at once.  If you need to print a long
402 slur over a few small slurs, please see @ref{Phrasing slurs}.
403
404
405 @commonprop
406
407 Some composers write two slurs when they want legato chords.  This
408 can be achieved in LilyPond by setting @code{doubleSlurs},
409
410 @lilypond[verbatim,ragged-right,relative,fragment,quote]
411 \set doubleSlurs = ##t
412 <c e>4 ( <d f> <c e> <d f> )
413 @end lilypond
414
415
416 @refcommands
417
418 @funindex \slurUp
419 @code{\slurUp},
420 @funindex \slurDown
421 @code{\slurDown},
422 @funindex \slurNeutral
423 @code{\slurNeutral},
424 @funindex \slurDashed
425 @code{\slurDashed},
426 @funindex \slurDotted
427 @code{\slurDotted},
428 @funindex \slurSolid
429 @code{\slurSolid}.
430
431 @seealso
432
433 Snippets: @lsrdir{expressive}
434
435 Internals Reference: @internalsref{Slur}.
436
437
438 @node Phrasing slurs
439 @unnumberedsubsubsec Phrasing slurs
440
441 @cindex phrasing slurs
442 @cindex phrasing marks
443
444 A phrasing slur (or phrasing mark) connects notes and is used to
445 indicate a musical sentence.  It is written using @code{\(} and
446 @code{\)} respectively:
447
448 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
449 \time 6/4 c'\( d( e) f( e) d\)
450 @end lilypond
451
452 Typographically, the phrasing slur behaves almost exactly like a
453 normal slur.  However, they are treated as different objects.  A
454 @code{\slurUp} will have no effect on a phrasing slur; instead,
455 use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
456 @code{\phrasingSlurNeutral}, or use the shorthands @code{_} and
457 @code{^}.
458
459 You cannot have simultaneous phrasing slurs.
460
461
462 @refcommands
463
464 @funindex \phrasingSlurUp
465 @code{\phrasingSlurUp},
466 @funindex \phrasingSlurDown
467 @code{\phrasingSlurDown},
468 @funindex \phrasingSlurNeutral
469 @code{\phrasingSlurNeutral}.
470
471
472 @seealso
473
474 Snippets: @lsrdir{expressive}
475
476 Internals Reference: @internalsref{PhrasingSlur}.
477
478
479 @node Breath marks
480 @unnumberedsubsubsec Breath marks
481
482 Breath marks are entered using @code{\breathe}
483
484 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
485 c'4 \breathe d4
486 @end lilypond
487
488
489 @commonprop
490
491 The glyph of the breath mark can be tuned by overriding the
492 @code{text} property of the @code{BreathingSign} layout object
493 with any markup text.  For example,
494
495 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
496 c'4
497 \override BreathingSign #'text
498   = #(make-musicglyph-markup "scripts.rvarcomma")
499 \breathe
500 d4
501 @end lilypond
502
503 @seealso
504
505 Snippets: @lsrdir{expressive}
506
507 Internals Reference: @internalsref{BreathingSign}.
508
509 Examples: @lsr{expressive,breathing-sign.ly}
510
511
512 @node Falls and doits
513 @unnumberedsubsubsec Falls and doits
514
515 Falls and doits can be added to notes using the @code{\bendAfter}
516 command,
517
518 @lilypond[fragment,ragged-right,relative=2]
519 \override Score.SpacingSpanner #'shortest-duration-space = #3.0
520 c4-\bendAfter #+5
521 c4-\bendAfter #-3
522 @end lilypond
523
524 @node Lines
525 @subsection Lines
526
527 @menu
528 * Glissando::                   
529 * Arpeggio::                    
530 * Trills::                      
531 @end menu
532
533 @node Glissando
534 @unnumberedsubsubsec Glissando
535
536 @cindex Glissando
537 @funindex \glissando
538
539 A glissando is a smooth change in pitch.  It is denoted by a line
540 or a wavy line between two notes.  It is requested by attaching
541 @code{\glissando} to a note
542
543 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
544 c2\glissando c'
545 \override Glissando #'style = #'zigzag
546 c2\glissando c,
547 @end lilypond
548
549 @commonprop
550
551
552 @lilypond[quote,ragged-right,verbatim]
553 I = \once \override NoteColumn #'ignore-collision = ##t
554
555 \relative <<
556   { \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
557   { \oneVoice \I c2 \glissando \I d, }
558 >>
559 @end lilypond
560
561
562
563 @seealso
564
565 Snippets: @lsrdir{expressive}
566
567 Internals Reference: @internalsref{Glissando}.
568
569 Glossary: @rglos{falls}, @rglos{doits}
570 Example files:
571 @lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
572
573
574 @refbugs
575
576 Printing text over the line (such as @emph{gliss.}) is not
577 supported.
578
579
580 @node Arpeggio
581 @unnumberedsubsubsec Arpeggio
582
583 @cindex Arpeggio
584 @cindex broken chord
585 @funindex \arpeggio
586
587 You can specify an arpeggio sign (also known as broken chord) on a
588 chord by attaching an @code{\arpeggio} to the chord:
589
590 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
591 <c e g c>\arpeggio
592 @end lilypond
593
594 A square bracket on the left is used to indicate that the chord should
595 @emph{not} be arpeggiated:
596
597 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
598 \arpeggioBracket
599 <c' e g c>\arpeggio
600 @end lilypond
601
602 The direction of the arpeggio can be denoted by adding an
603 arrowhead to the wiggly line. This is done with the commands
604 @code{arpeggioUp} and @code{arpeggioDown}. @code{arpeggioNeutral}
605 reverts to the arrow-less version:
606
607 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
608 \new Voice {
609   \arpeggioUp
610   <c e g c>\arpeggio
611   \arpeggioDown
612   <c e g c>\arpeggio
613   \arpeggioNeutral
614   <c e g c>\arpeggio
615 }
616 @end lilypond
617
618
619 @commonprop
620
621 In a @code{PianoStaff}, it is possible to let an arpeggio cross
622 between the staves by setting the property
623 @internalsref{PianoStaff}.@code{connectArpeggios}. 
624
625 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
626 \new PianoStaff <<
627   \set PianoStaff.connectArpeggios = ##t
628   \new Staff { <c' e g c>\arpeggio }
629   \new Staff { \clef bass <c,, e g>\arpeggio }
630 >>
631 @end lilypond
632
633 The same can be accomplished in contexts other than
634 @code{PianoStaff} if the @code{Span_arpeggio_engraver} is included
635 in the Score context.
636
637 @lilypond[quote,ragged-right,verbatim]
638 \score {
639   \new StaffGroup {
640     \set Score.connectArpeggios = ##t
641     <<
642       \new Voice \relative c' {
643         <e g>4\arpeggio
644       }
645       \new Voice  \relative c {
646         \clef bass
647         <c e>4\arpeggio
648       }
649     >>
650   }
651   \layout {
652     \context {
653       \Score 
654       \consists "Span_arpeggio_engraver"
655     } 
656   }
657 }
658 @end lilypond
659
660 Similarly,  an arpeggio can be drawn across notes in
661 different voices on the same staff if the Span_arpeggio_engraver
662 is moved to the Staff context:
663
664 @lilypond[quote,ragged-right,verbatim]
665 \new Staff
666 \with {
667   \consists "Span_arpeggio_engraver"
668 } \relative c' {
669   \set Staff.connectArpeggios = ##t
670     <<
671     {<e' g>4\arpeggio <d f> <d f>2 }
672   \\
673   {<d, f>2\arpeggio  <g b>2  }
674   >>
675 }
676 @end lilypond
677
678
679
680 @refcommands
681
682 @code{\arpeggio},
683 @funindex \arpeggioUp
684 @code{\arpeggioUp},
685 @funindex \arpeggioDown
686 @code{\arpeggioDown},
687 @funindex \arpeggioNeutral
688 @code{\arpeggioNeutral},
689 @funindex \arpeggioBracket
690 @code{\arpeggioBracket}.
691
692
693 @seealso
694
695 Notation manual: @ref{Ties}, for writing out arpeggios.
696
697 Snippets: @lsrdir{expressive}
698
699 Internals Reference: @internalsref{Arpeggio}.
700
701
702 @refbugs
703
704 It is not possible to mix connected arpeggios and unconnected
705 arpeggios in one @internalsref{PianoStaff} at the same point in
706 time.
707
708
709 @node Trills
710 @unnumberedsubsubsec Trills
711
712 Short trills are printed with @code{\trill} like normal
713 articulation; see @ref{Articulations and ornamentations}.
714
715 Long running trills are made with @code{\startTrillSpan} and
716 @code{\stopTrillSpan}. In the following example, it is shown in
717 the common combination with grace notes.  If a more precise
718 control of the placement of the grace notes is needed, see
719 @ref{Grace notes}.
720
721 @lilypond[verbatim,ragged-right,relative=2,quote,fragment]
722 \relative c''
723 {c1 \afterGrace 
724 d1\startTrillSpan { c16[\stopTrillSpan d] }
725 c4 }
726 @end lilypond
727
728 @cindex Pitched trills
729
730 Trills that should be executed on an explicitly specified pitch
731 can be typeset with the command @code{pitchedTrill}, and the
732 syntax @code{\pitchedTrill} @var{mainnote}@code{\startTrillSpan}
733 @var{trillnote} @var{endnote} @code{\stopTrillSpan}.
734
735 @lilypond[ragged-right,verbatim,fragment,relative=1,quote]
736 \pitchedTrill e2 \startTrillSpan fis
737 d\stopTrillSpan
738 @end lilypond
739
740
741 @noindent
742 The first argument is the main note.  The pitch of the second is
743 printed as a stemless note head in parentheses.
744
745
746 @refcommands
747
748 @code{\startTrillSpan},
749 @funindex \startTrillSpan
750 @code{\stopTrillSpan}.
751 @funindex \stopTrillSpan
752
753
754 @seealso
755
756 Snippets: @lsrdir{expressive}
757
758 Internals Reference: @internalsref{TrillSpanner}.
759
760
761
762