]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/user/expressive.itely
Merge branch 'lilypond/translation' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
[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 @c \version "2.11.38"
10
11 @node Expressive marks
12 @section Expressive marks
13
14 @lilypondfile[quote]{expressive-headword.ly}
15
16 @menu
17 * Attached to notes::           
18 * Curves::                      
19 * Lines::                       
20 @end menu
21
22
23 @node Attached to notes
24 @subsection Attached to notes
25
26 @menu
27 * Articulations and ornamentations::  
28 * Dynamics::                    
29 * New dynamic marks::           
30 @end menu
31
32 @node Articulations and ornamentations
33 @subsubsection Articulations and ornamentations
34
35 @cindex articulations
36 @cindex scripts
37 @cindex ornaments
38 @cindex espressivo
39 @cindex fermata
40 @cindex upbow
41 @cindex downbow
42 @cindex foot marks
43 @cindex organ pedal marks
44 @cindex turn
45 @cindex open
46 @cindex stopped
47 @cindex flageolet
48 @cindex reverseturn
49 @cindex trill
50 @cindex prall
51 @cindex mordent
52 @cindex prallprall
53 @cindex prallmordent
54 @cindex prall, up
55 @cindex prall, down
56 @cindex thumb marking
57 @cindex segno
58 @cindex coda
59 @cindex varcoda
60
61 A variety of symbols that denote articulations, ornamentations,
62 and other performance indications can be attached to a note using
63 this syntax:
64
65 @example
66 @var{note}\@var{name}
67 @end example
68
69 The possible values for @var{name} are listed in @ref{List of
70 articulations}.  For example:
71
72 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
73 c4\staccato c\mordent b2\turn
74 c1\fermata
75 @end lilypond
76
77 @cindex marcato
78 @cindex stopped
79 @cindex tenuto
80 @cindex staccatissimo
81 @cindex accent
82 @cindex staccato
83 @cindex portato
84
85 Some of these articulations have shorthands for easier entry.
86 Shorthands are appended to the note name, and their syntax
87 consists of a dash (@tie{}@code{-}) followed by a symbol
88 signifying the articulation.  Predefined shorthands exist for
89 @notation{marcato}, @notation{stopped}, @notation{tenuto},
90 @notation{staccatissimo}, @notation{accent}, @notation{staccato},
91 and @notation{portato}.  Their corresponding output appears as
92 follows:
93
94 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
95 c4-^  c-+  c--  c-|
96 c->   c-.  c-_
97 @end lilypond
98
99 The rules for the default placement of articulations are defined
100 in @file{scm/@/script@/.scm}.  Articulations and ornamentations
101 may be manually placed above or below the staff, see
102 @ref{Controlling direction and placement}.
103
104
105 @snippets
106
107 @c After next LSR update, this snippet can be used
108 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
109 @c {modifying-default-values-for-articulation-shorthand-notation.ly}
110
111 The shorthands are defined in @file{ly/@/script@/-init@/.ly},
112 where the variables @code{dashHat}, @code{dashPlus},
113 @code{dashDash}, @code{dashBar}, @code{dashLarger},
114 @code{dashDot}, and @code{dashUnderscore} are assigned default
115 values.  The default values for the shorthands can be modified.
116 For example, to associate the @code{-+} (@code{dashPlus})
117 shorthand with the @notation{trill} symbol instead of the default
118 @notation{+} symbol, assign the value @code{trill} to the variable
119 @code{dashPlus}:
120
121 @lilypond[verbatim,quote,ragged-right]
122 \relative c'' { c-+ }
123 dashPlus = "trill"
124 \relative c'' { c-+ }
125 @end lilypond
126
127 @c After next LSR update, this snippet can be used
128 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
129 @c {controlling-the-vertical-ordering-of-scripts.ly}
130
131 The vertical ordering of scripts is controlled with the
132 @code{script-priority} property.  The lower this number, the
133 closer it will be put to the note.  In this example, the
134 @code{TextScript} (the sharp symbol) first has the lowest
135 priority, so it is put lowest in the first example.  In the
136 second, the @notation{prall trill} (the @code{Script}) has the
137 lowest, so it is on the inside.  When two objects have the same
138 priority, the order in which they are entered decides which one
139 comes first.
140
141 @lilypond[verbatim,quote,ragged-right,fragment,relative=3]
142 \once \override TextScript #'script-priority = #-100
143 a4^\prall^\markup { \sharp }
144
145 \once \override Script #'script-priority = #-100
146 a4^\prall^\markup { \sharp }
147 @end lilypond
148
149
150 @seealso
151
152 Music Glossary:
153 @rglos{tenuto},
154 @rglos{accent},
155 @rglos{staccato},
156 @rglos{portato}.
157
158 Notation Reference:
159 @ref{Controlling direction and placement}.
160
161 Installed Files:
162 @file{scm/@/script@/.scm}.
163
164 Snippets:
165 @rlsr{Expressive marks}.
166
167 Internals Reference:
168 @rinternals{Script},
169 @rinternals{TextScript}.
170
171
172 @knownissues
173
174 These signs appear in the printed output but have no effect on the
175 MIDI rendering of the music.
176
177
178 @node Dynamics
179 @subsubsection Dynamics
180
181 @cindex absolute dynamics
182 @cindex dynamics
183 @cindex dynamics, absolute
184 @funindex \ppppp
185 @funindex \pppp
186 @funindex \ppp
187 @funindex \pp
188 @funindex \p
189 @funindex \mp
190 @funindex \mf
191 @funindex \f
192 @funindex \ff
193 @funindex \fff
194 @funindex \ffff
195 @funindex \fp
196 @funindex \sf
197 @funindex \sff
198 @funindex \sp
199 @funindex \spp
200 @funindex \sfz
201 @funindex \rfz
202
203 Absolute dynamic marks are specified using a command after a note,
204 such as @code{c4\ff}.  The available dynamic marks are
205 @code{\ppppp}, @code{\pppp}, @code{\ppp}, @code{\pp}, @code{\p},
206 @code{\mp}, @code{\mf}, @code{\f}, @code{\ff}, @code{\fff},
207 @code{\ffff}, @code{\fp}, @code{\sf}, @code{\sff}, @code{\sp},
208 @code{\spp}, @code{\sfz}, and @code{\rfz}.  The dynamic marks may
209 be manually placed above or below the staff, see @ref{Controlling
210 direction and placement}.
211
212 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
213 c2\ppp c\mp
214 c\rfz c^\mf
215 c_\spp c^\ff
216 @end lilypond
217
218 @cindex hairpin
219 @funindex \<
220 @funindex \>
221 @funindex \!
222 @funindex \cr
223 @funindex \decr
224
225 A @notation{crescendo} mark is started with @code{\<} and
226 terminated with @code{\!}, an absolute dynamic, or an additional
227 @notation{crescendo} or @notation{decrescendo} mark.  A
228 @notation{decrescendo} mark is started with @code{\>} and is also
229 terminated with @code{\!}, an absolute dynamic, or another
230 @notation{crescendo} or @notation{decrescendo} mark.  @code{\cr}
231 and @code{\decr} may be used instead of @code{\<} and @code{\>}.
232 @notation{Hairpins} are engraved by default using this notation.
233
234 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
235 c2\< c\!
236 d2\< d\f
237 e2\< e\>
238 f2\> f\!
239 e2\> e\mp
240 d2\> d\>
241 c1\!
242 @end lilypond
243
244 Spacer notes are needed to engrave multiple marks on one note.
245
246 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
247 c4\< c\! d\> e\!
248 << f1 { s4 s4\< s4\> s4\! } >>
249 @end lilypond
250
251 @cindex espressivo articulation
252
253 In some situations the @code{\espressivo} articulation mark may be
254 the appropriate choice to indicate a @notation{crescendo} and
255 @notation{decrescendo} on one note:
256
257 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
258 c2 b4 a
259 g1\espressivo
260 @end lilypond
261
262 @cindex crescendo
263 @cindex decrescendo
264 @cindex diminuendo
265 @funindex \setTextCresc
266 @funindex \setTextDim
267 @funindex \setTextDecr
268 @funindex \setTextDecresc
269 @funindex \setHairpinCresc
270 @funindex \setHairpinDim
271 @funindex \setHairpinDecresc
272
273 @notation{Crescendos} and @notation{decrescendos} can be engraved
274 as textual markings instead of hairpins.  The built-in commands
275 that enable these text modes are @code{\setTextCresc},
276 @code{\setTextDecresc}, @code{\setTextDecr}, and
277 @code{\setTextDim}.  The corresponding @code{\setHairpinCresc},
278 @code{\setHairpinDim}, and @code{\setHairpinDecresc} commands will
279 revert to hairpins again:
280
281 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
282 c\< d e f\!
283 e\> d c b\!
284 \setTextCresc
285 c\< d e f\!
286 \setTextDecresc
287 e\> d c b\!
288 \setHairpinCresc
289 c\< d e f\!
290 @end lilypond
291
292 To create new absolute dynamic marks or text that should be
293 aligned with dynamics, see @ref{New dynamic marks}.
294
295 Vertical positioning of dynamics is handled by
296 @rinternals{DynamicLineSpanner}.
297
298
299 @predefined
300
301 @funindex \dynamicUp
302 @code{\dynamicUp},
303 @funindex \dynamicDown
304 @code{\dynamicDown},
305 @funindex \dynamicNeutral
306 @code{\dynamicNeutral}.
307
308
309 @snippets
310
311 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
312 {setting-hairpin-behavior-at-bar-lines.ly}
313
314 @c After next LSR update, this snippet can be used
315 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
316 @c {setting-the-minimum-length-of-hairpins.ly}
317
318 If hairpins are too short, they can be lengthened using the
319 following method:
320
321 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
322 c4\< c\! d\> e\!
323 \override Voice.Hairpin #'minimum-length = #5
324 << f1 { s4 s4\< s4\> s4\! } >>
325 @end lilypond
326
327 @cindex al niente
328 @cindex niente, al
329
330 @c After next LSR update, this snippet can be used
331 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
332 @c {printing-hairpins-using-al-niente-notation.ly}
333
334 Hairpins may be printed with a circled tip (al niente notation):
335
336 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
337 \override Hairpin #'circled-tip = ##t
338 c2\< c\!
339 c4\> c\< c2\!
340 @end lilypond
341
342 @c After next LSR update, this snippet can be used
343 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
344 @c {vertically-aligning-dynamics-across-multiple-notes.ly}
345
346 Dynamics that occur at, begin on, or end on the same note will be
347 vertically aligned.  If you want to ensure that dynamics are
348 aligned when they do not occur on the same note, you can increase
349 the @code{staff-padding} property.
350
351 @example
352 \override DynamicLineSpanner #'staff-padding = #4
353 @end example
354
355 @c I can't figure this one out.  Consider removing this.  -pm
356
357 @notation{Crescendi} and @notation{decrescendi} that cross a line
358 break will be continued on the second line.  If they end on the
359 first note of a new line, nothing will be printed on that line.
360 To change this behavior, use
361
362 @example
363 \override Score.Hairpin #'after-line-breaking = ##t
364 @end example
365
366 @c After next LSR update, this snippet can be used
367 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
368 @c {hiding-the-extender-line-for-text-dynamics.ly}
369
370 Text style dynamic changes (such as @notation{cresc.} and
371 @notation{dim.}) are printed with a dashed line showing their
372 extent.  To suppress printing this line, use
373
374 @example
375 \override DynamicTextSpanner #'dash-period = #-1.0
376 @end example
377
378 @c After next LSR update, this snippet can be used
379 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
380 @c {changing-text-and-spanner-styles-for-text-dynamics.ly}
381
382 The text used for @notation{crescendos} and
383 @notation{decrescendos} can be changed by modifying the context
384 properties @code{crescendoText} and @code{decrescendoText}.  The
385 style of the spanner line can be changed by modifying the context
386 properties @code{crescendoSpanner} and @code{decrescendoSpanner}.
387 Available values for the spanner properties are @code{'hairpin},
388 @code{'line}, @code{'dashed-line}, and @code{'dotted-line}.  If
389 unset, a hairpin crescendo is used:
390
391 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
392 \set crescendoText = \markup { \italic "cresc. poco" }
393 \set crescendoSpanner = #'dotted-line
394 a'2\< a a a a a a a\mf
395 @end lilypond
396
397
398 @seealso
399
400 @c TODO: Add hairpin to glossary.
401
402 Music Glossary:
403 @rglos{crescendo},
404 @rglos{decrescendo}.
405
406 Learning Manual:
407 @rlearning{Articulation and dynamics}.
408
409 Notation Reference:
410 @ref{Controlling direction and placement}.
411
412 Snippets:
413 @rlsr{Expressive marks}.
414
415 Internals Reference:
416 @rinternals{DynamicText},
417 @rinternals{Hairpin},
418 @rinternals{DynamicLineSpanner}.
419
420
421 @node New dynamic marks
422 @subsubsection New dynamic marks
423
424 It is possible to print new dynamic marks or text that should be
425 aligned with dynamics.  Use @code{make-dynamic-script} to create
426 these marks.  Note that the dynamic font only contains the
427 characters @code{f,m,p,r,s} and @code{z}.
428
429 Some situations (such as dynamic marks) have preset font-related
430 properties.  If you are creating text in such situations, it is
431 advisable to cancel those properties with @code{normal-text}.  See
432 @ref{Text markup commands}, for more details.
433
434 @cindex make-dynamic-script
435
436 @lilypond[quote,verbatim,ragged-right]
437 sfzp = #(make-dynamic-script "sfzp")
438 \relative c' {
439   c4 c c\sfzp c
440 }
441 @end lilypond
442
443 @cindex Dynamics, editorial
444 @cindex Dynamics, parenthesis
445
446 It is also possible to print dynamics in round parenthesis or
447 square brackets.  These are often used for adding editorial
448 dynamics.
449
450 @lilypond[quote,verbatim,ragged-right]
451 rndf = \markup{ \center-align {\line { \bold{\italic (}
452   \dynamic f \bold{\italic )} }} }
453 boxf = \markup{ \bracket { \dynamic f } }
454 { c'1_\rndf c'1_\boxf }
455 @end lilypond
456
457 @seealso
458
459 Snippets:
460 @rlsr{Expressive marks}.
461
462
463 @node Curves
464 @subsection Curves
465
466 @menu
467 * Slurs::                       
468 * Phrasing slurs::              
469 * Breath marks::                
470 * Falls and doits::             
471 @end menu
472
473 @node Slurs
474 @subsubsection Slurs
475
476 @cindex slurs
477
478 A @notation{slur} indicates that notes are to be played bound or
479 @emph{legato}.  They are entered using parentheses:
480
481 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
482 f( g a) a8 b( a4 g2 f4)
483 <c e>2( <b d>2)
484 @end lilypond
485
486 Just as with ties, the direction of a slur can be specified with
487 @code{\slur@emph{DIR}}, where @code{@emph{DIR}} is either
488 @code{Up}, @code{Down}, or @code{Neutral} (@code{Neutral} is the
489 default).  Slurs may be manually placed above or below the staff,
490 see @ref{Controlling direction and placement}.
491
492 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
493 c4_( c) c^( c)
494 @end lilypond
495
496 Using this method, only one slur can be printed at once.  To print
497 a long slur over a few small slurs, see @ref{Phrasing slurs}.
498
499
500 @predefined
501
502 @funindex \slurUp
503 @code{\slurUp},
504 @funindex \slurDown
505 @code{\slurDown},
506 @funindex \slurNeutral
507 @code{\slurNeutral},
508 @funindex \slurDashed
509 @code{\slurDashed},
510 @funindex \slurDotted
511 @code{\slurDotted},
512 @funindex \slurSolid
513 @code{\slurSolid}.
514
515
516 @snippets
517
518 @c After next LSR update, this snippet can be used
519 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
520 @c {using-double-slurs-for-legato-chords.ly}
521
522 Some composers write two slurs when they want legato chords.  This
523 can be achieved in LilyPond by setting @code{doubleSlurs},
524
525 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
526 \set doubleSlurs = ##t
527 <c e>4 ( <d f> <c e> <d f> )
528 @end lilypond
529
530
531 @seealso
532
533 Music Glossary:
534 @rglos{slur}.
535
536 Notation Reference:
537 @ref{Controlling direction and placement}.
538
539 Snippets:
540 @rlsr{Expressive marks}.
541
542 Internals Reference:
543 @rinternals{Slur}.
544
545
546 @node Phrasing slurs
547 @subsubsection Phrasing slurs
548
549 @cindex phrasing slurs
550 @cindex phrasing marks
551 @funindex \(
552 @funindex \)
553
554 A phrasing slur (or phrasing mark) connects notes and is used to
555 indicate a musical sentence.  It is written using @code{\(} and
556 @code{\)} respectively:
557
558 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
559 \time 6/4 c'\( d( e) f( e) d\)
560 @end lilypond
561
562 Typographically, the phrasing slur behaves almost exactly like a
563 normal slur.  However, they are treated as different objects.  A
564 @code{\slurUp} will have no effect on a phrasing slur; instead,
565 use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
566 @code{\phrasingSlurNeutral}.  Phrasing slurs may be manually
567 placed above or below the staff, see @ref{Controlling direction
568 and placement}.
569
570 You cannot have simultaneous phrasing slurs.
571
572
573 @predefined
574
575 @funindex \phrasingSlurUp
576 @code{\phrasingSlurUp},
577 @funindex \phrasingSlurDown
578 @code{\phrasingSlurDown},
579 @funindex \phrasingSlurNeutral
580 @code{\phrasingSlurNeutral}.
581
582
583 @seealso
584
585 Notation Reference:
586 @ref{Controlling direction and placement}.
587
588 Snippets:
589 @rlsr{Expressive marks}.
590
591 Internals Reference:
592 @rinternals{PhrasingSlur}.
593
594
595 @node Breath marks
596 @subsubsection Breath marks
597
598 @cindex breath marks
599 @funindex \breathe
600
601 Breath marks are entered using @code{\breathe}:
602
603 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
604 c'4 \breathe d4
605 @end lilypond
606
607
608 @snippets
609
610 @c After next LSR update, this snippet can be used
611 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
612 @c {changing-the-breath-mark-symbol.ly}
613
614 The glyph of the breath mark can be tuned by overriding the
615 @code{text} property of the @code{BreathingSign} layout object
616 with any markup text.  For example,
617
618 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
619 c'4
620 \override BreathingSign #'text
621   = #(make-musicglyph-markup "scripts.rvarcomma")
622 \breathe
623 d4
624 @end lilypond
625
626
627 @seealso
628
629 Snippets:
630 @rlsr{Expressive marks}.
631 @c @lsr{expressive,breathing-sign.ly}.
632
633 Internals Reference:
634 @rinternals{BreathingSign}.
635
636
637 @node Falls and doits
638 @subsubsection Falls and doits
639
640 @cindex falls
641 @cindex doits
642 @funindex \bendAfter
643
644 @notation{Falls} and @notation{doits} can be added to notes using
645 the @code{\bendAfter} command:
646
647 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
648 c2-\bendAfter #+4
649 c-\bendAfter #-4
650 c-\bendAfter #+8
651 c-\bendAfter #-8
652 @end lilypond
653
654 The dash (@tie{-}) following the note name is @emph{required} when
655 writing @notation{falls} and @notation{doits}.
656
657
658 @snippets
659
660 @c After next LSR update, this snippet can be used
661 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
662 @c {adjusting-the-shape-of-falls-and-doits.ly}
663
664 The @code{shortest-duration-space} property may have to be tweaked
665 to adjust the shape of @notation{falls} and @notation{doits}.
666
667 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
668 \override Score.SpacingSpanner #'shortest-duration-space = #3.0
669 c4-\bendAfter #+5
670 c4-\bendAfter #-3
671 @end lilypond
672
673
674 @seealso
675
676 @c TODO: add falls and doits to glossary.
677 @c Music Glossary:
678 @c @rglos{falls},
679 @c @rglos{doits}.
680
681 Snippets:
682 @rlsr{Expressive marks}.
683
684
685 @node Lines
686 @subsection Lines
687
688 @menu
689 * Glissando::                   
690 * Arpeggio::                    
691 * Trills::                      
692 @end menu
693
694 @node Glissando
695 @subsubsection Glissando
696
697 @cindex glissando
698 @funindex \glissando
699
700 A @notation{glissando} is a smooth change in pitch.  It is denoted
701 by a line or a wavy line between two notes.  A
702 @notation{glissando} is created by attaching @code{\glissando} to
703 a note:
704
705 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
706 c2\glissando c'
707 \override Glissando #'style = #'zigzag
708 c2\glissando c,
709 @end lilypond
710
711
712 @snippets
713
714 @c After next LSR update, this snippet can be used
715 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
716 @c {suppressing-compiler-warnings-when-two-glissandos-intersect.ly}
717
718 @lilypond[verbatim,quote,ragged-right]
719 I = \once \override NoteColumn #'ignore-collision = ##t
720
721 \relative c' <<
722   { \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
723   { \oneVoice \I c2 \glissando \I d, }
724 >>
725 @end lilypond
726
727
728 @seealso
729
730 Music Glossary:
731 @rglos{glissando}.
732
733 Snippets:
734 @rlsr{Expressive marks}.
735
736 @c FIXME: I need to figure out what's up with these.  -gp
737 @c @lsr{expressive,glissando.ly},
738 @c @lsr{expressive,line-styles.ly}
739
740 Internals Reference:
741 @rinternals{Glissando}.
742
743
744 @knownissues
745
746 Printing text over the line (such as @emph{gliss.}) is not
747 supported.
748
749
750 @node Arpeggio
751 @subsubsection Arpeggio
752
753 @cindex arpeggio
754 @cindex broken chord
755
756 @c Add documentation for new 'parenthesis' style arpeggio.  Maybe
757 @c create a new \arpeggioParen command, or something similar. -pm
758
759 You can specify an @notation{arpeggio} (also known as a
760 @notation{broken chord}) on a chord by attaching an
761 @code{\arpeggio} to the chord:
762
763 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
764 <c e g c>\arpeggio
765 @end lilypond
766
767 A square bracket on the left, denoted by @code{\arpeggioBracket},
768 is used to indicate that the chord should @emph{not} be
769 arpeggiated:
770
771 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
772 \arpeggioBracket
773 <c e g c>\arpeggio
774 @end lilypond
775
776 The direction of the arpeggio can be denoted by adding an
777 arrowhead to the wiggly line.  This is done with the commands
778 @code{arpeggioUp} and @code{arpeggioDown}.  @code{arpeggioNeutral}
779 reverts to the arrow-less version:
780
781 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
782 \new Voice {
783   \arpeggioUp
784   <c e g c>\arpeggio
785   \arpeggioDown
786   <c e g c>\arpeggio
787   \arpeggioNeutral
788   <c e g c>\arpeggio
789 }
790 @end lilypond
791
792 @notation{Arpeggios} can be explicitly written out using
793 @notation{ties}.  For more information, see @ref{Ties}.
794
795 @predefined
796
797 @funindex \arpeggio
798 @code{\arpeggio},
799 @funindex \arpeggioUp
800 @code{\arpeggioUp},
801 @funindex \arpeggioDown
802 @code{\arpeggioDown},
803 @funindex \arpeggioNeutral
804 @code{\arpeggioNeutral},
805 @funindex \arpeggioBracket
806 @code{\arpeggioBracket}.
807
808
809 @snippets
810
811 @c After next LSR update, this snippet can be used
812 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
813 @c {creating-cross--staff-arpeggios-in-a-piano-staff.ly}
814
815 In a @code{PianoStaff}, it is possible to let an arpeggio cross
816 between the staves by setting the property
817 @code{PianoStaff}.@code{connectArpeggios}.
818
819 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
820 \new PianoStaff <<
821   \set PianoStaff.connectArpeggios = ##t
822   \new Staff { <c' e g c>\arpeggio }
823   \new Staff { \clef bass <c,, e g>\arpeggio }
824 >>
825 @end lilypond
826
827 @c After next LSR update, this snippet can be used
828 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
829 @c {creating-cross--staff-arpeggios-in-other-contexts.ly}
830
831 The same can be accomplished in contexts other than
832 @code{PianoStaff} if the @code{Span_arpeggio_engraver} is included
833 in the Score context.
834
835 @lilypond[verbatim,quote,ragged-right]
836 \score {
837   \new StaffGroup {
838     \set Score.connectArpeggios = ##t
839     <<
840       \new Voice \relative c' {
841         <e g>4\arpeggio
842       }
843       \new Voice  \relative c {
844         \clef bass
845         <c e>4\arpeggio
846       }
847     >>
848   }
849   \layout {
850     \context {
851       \Score
852       \consists "Span_arpeggio_engraver"
853     }
854   }
855 }
856 @end lilypond
857
858 @c After next LSR update, this snippet can be used
859 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
860 @c {creating-arpeggios-across-notes-in-different-voices.ly}
861
862 Similarly, an arpeggio can be drawn across notes in different
863 voices on the same staff if the @code{Span_arpeggio_engraver} is
864 moved to the Staff context:
865
866 @lilypond[verbatim,quote,ragged-right]
867 \new Staff
868 \with {
869   \consists "Span_arpeggio_engraver"
870 } \relative c' {
871   \set Staff.connectArpeggios = ##t
872     <<
873     {<e' g>4\arpeggio <d f> <d f>2 }
874   \\
875   {<d, f>2\arpeggio  <g b>2  }
876   >>
877 }
878 @end lilypond
879
880
881 @seealso
882
883 @c TODO: Add 'broken chord' to glossary.
884
885 Music Glossary:
886 @rglos{arpeggio}.
887
888 Notation Reference:
889 @ref{Ties}.
890
891 Snippets:
892 @rlsr{Expressive marks}.
893
894 Internals Reference:
895 @rinternals{Arpeggio},
896 @rinternals{PianoStaff}.
897
898
899 @knownissues
900
901 It is not possible to mix connected arpeggios and unconnected
902 arpeggios in one @code{PianoStaff} at the same point in
903 time.
904
905
906 @node Trills
907 @subsubsection Trills
908
909 @cindex trills
910 @funindex \trill
911
912 Short @notation{trills} are printed with @code{\trill} like normal
913 articulation; see @ref{Articulations and ornamentations}.
914
915 Long running @notation{trills} are made with
916 @code{\startTrillSpan} and @code{\stopTrillSpan}.  In the
917 following example, a long running @notation{trill} is shown
918 combined with grace notes.  To achieve precise control of the
919 placement of the grace notes, see @ref{Grace notes}.
920
921 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
922 c1 \afterGrace
923 d1\startTrillSpan { c16[\stopTrillSpan d] }
924 c4
925 @end lilypond
926
927 @cindex pitched trills
928
929 @notation{Trills} that should be executed on an explicitly
930 specified pitch can be typeset with the command
931 @code{\pitchedTrill} using the following syntax:
932
933 @example
934 @code{\pitchedTrill} @var{mainnote} @code{\startTrillSpan}
935 @var{trillnote} @var{endnote} @code{\stopTrillSpan}
936 @end example
937
938 @lilypond[verbatim,quote,ragged-right,fragment,relative=1]
939 \pitchedTrill e2 \startTrillSpan fis
940 d\stopTrillSpan
941 @end lilypond
942
943 @noindent
944 The first argument is the main note.  The pitch of the second is
945 printed as a stemless note head in parentheses.
946
947
948 @predefined
949
950 @code{\startTrillSpan},
951 @funindex \startTrillSpan
952 @code{\stopTrillSpan}.
953 @funindex \stopTrillSpan
954
955
956 @seealso
957
958 Music Glossary:
959 @rglos{trill}.
960
961 Snippets:
962 @rlsr{Expressive marks}.
963
964 Internals Reference:
965 @rinternals{TrillSpanner}.