]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/notation/pitches.itely
c1869ed1faedcf32a3a74a5a157b09e42a61e190
[lilypond.git] / Documentation / notation / pitches.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.  For details, see the Contributors'
7     Guide, node Updating translation committishes..
8 @end ignore
9
10 @c \version "2.13.36"
11
12
13 @node Pitches
14 @section Pitches
15
16 @lilypondfile[quote]{pitches-headword.ly}
17
18 This section discusses how to specify the pitch of notes.  There
19 are three steps to this process: input, modification, and output.
20
21 @menu
22 * Writing pitches::
23 * Changing multiple pitches::
24 * Displaying pitches::
25 * Note heads::
26 @end menu
27
28
29 @node Writing pitches
30 @subsection Writing pitches
31
32 This section discusses how to input pitches.  There are two
33 different ways to place notes in octaves: absolute and relative
34 mode.  In most cases, relative mode will be more convenient.
35
36 @menu
37 * Absolute octave entry::
38 * Relative octave entry::
39 * Accidentals::
40 * Note names in other languages::
41 @end menu
42
43
44 @node Absolute octave entry
45 @unnumberedsubsubsec Absolute octave entry
46
47 @cindex pitch names
48 @cindex pitches
49 @cindex absolute
50 @cindex absolute octave specification
51 @cindex octave specification, absolute
52 @cindex absolute octave entry
53 @cindex octave entry, absolute
54
55 A pitch name is specified using lowercase letters@tie{}@code{a}
56 through@tie{}@code{g}.  The note names @code{c} to @code{b} are
57 engraved in the octave below middle C.
58
59 @c don't use c' here.
60 @lilypond[verbatim,quote]
61 {
62   \clef bass
63   c4 d e f
64   g4 a b c
65   d4 e f g
66 }
67 @end lilypond
68
69 @cindex octave changing mark
70
71 @funindex '
72 @funindex ,
73
74 Other octaves may be specified with a single quote@tie{}(@code{'})
75 or comma@tie{}(@code{,}) character.  Each@tie{}@code{'} raises the
76 pitch by one octave; each@tie{}@code{,} lowers the pitch by an
77 octave.
78
79 @lilypond[verbatim,quote]
80 {
81   \clef treble
82   c'4 c'' e' g
83   d''4 d' d c
84   \clef bass
85   c,4 c,, e, g
86   d,,4 d, d c
87 }
88 @end lilypond
89
90
91 @seealso
92 Music Glossary:
93 @rglos{Pitch names}.
94
95 Snippets:
96 @rlsr{Pitches}.
97
98
99 @node Relative octave entry
100 @unnumberedsubsubsec Relative octave entry
101
102 @cindex relative
103 @cindex relative octave entry
104 @cindex octave entry, relative
105 @cindex relative octave specification
106 @cindex octave specification, relative
107
108 @funindex relative
109 @funindex \relative
110
111 When octaves are specified in absolute mode it is easy to
112 accidentally put a pitch in the wrong octave.  Relative octave
113 mode reduces these errors since most of the time it is not
114 necessary to indicate any octaves at all.  Furthermore, in
115 absolute mode a single mistake may be difficult to spot, while in
116 relative mode a single error puts the rest of the piece off by one
117 octave.
118
119 @example
120 \relative @var{startpitch} @var{musicexpr}
121 @end example
122
123 In relative mode, each note is assumed to be as close to the
124 previous note as possible.  This means that the octave of each
125 pitch inside @code{@var{musicexpr}} is calculated as follows:
126
127 @itemize
128 @item
129 If no octave changing mark is used on a pitch, its octave is
130 calculated so that the interval with the previous note is less
131 than a fifth.  This interval is determined without considering
132 accidentals.
133
134 @item
135 An octave changing mark@tie{}@code{'} or@tie{}@code{,} can be
136 added to respectively raise or lower a pitch by an extra octave,
137 relative to the pitch calculated without an octave mark.
138
139 @item
140 Multiple octave changing marks can be used.  For example,
141 @code{''}@tie{}and@tie{}@code{,,} will alter the pitch by two
142 octaves.
143
144 @item
145 The pitch of the first note is relative to
146 @code{@var{startpitch}}.  @code{@var{startpitch}} is specified in
147 absolute octave mode, and it is recommended that it be a octave of
148 @code{c}.
149 @end itemize
150
151 Here is the relative mode shown in action:
152
153 @lilypond[verbatim,quote]
154 \relative c {
155   \clef bass
156   c d e f
157   g a b c
158   d e f g
159 }
160 @end lilypond
161
162 Octave changing marks are used for intervals greater than a
163 fourth:
164
165 @lilypond[verbatim,quote]
166 \relative c'' {
167   c g c f,
168   c' a, e'' c
169 }
170 @end lilypond
171
172 A note sequence without a single octave mark can nevertheless span
173 large intervals:
174
175 @lilypond[verbatim,quote]
176 \relative c {
177   c f b e
178   a d g c
179 }
180 @end lilypond
181
182 When @code{\relative} blocks are nested, the innermost
183 @code{\relative} block applies.
184
185 @lilypond[verbatim,quote]
186 \relative c' {
187   c d e f
188   \relative c'' {
189     c d e f
190   }
191 }
192 @end lilypond
193
194 @code{\relative} has no effect on @code{\chordmode} blocks.
195
196 @lilypond[verbatim,quote]
197 \new Staff {
198   \relative c''' {
199     \chordmode { c1 }
200   }
201   \chordmode { c1 }
202 }
203 @end lilypond
204
205 @code{\relative} is not allowed inside of @code{\chordmode} blocks.
206
207 Music inside a @code{\transpose} block is absolute unless a
208 @code{\relative} is included.
209
210 @lilypond[verbatim,quote]
211 \relative c' {
212   d e
213   \transpose f g {
214     d e
215     \relative c' {
216       d e
217     }
218   }
219 }
220 @end lilypond
221
222
223 @cindex chords and relative octave entry
224 @cindex relative octave entry and chords
225
226 If the preceding item is a chord, the first note of the chord is
227 used as the reference point for the octave placement of a
228 following note or chord.  Inside chords, the next note is always
229 relative to the preceding one.  Examine the next example
230 carefully, paying attention to the @code{c} notes.
231
232 @lilypond[verbatim,quote]
233 \relative c' {
234   c
235   <c e g>
236   <c' e g'>
237   <c, e, g''>
238 }
239 @end lilypond
240
241 As explained above, the octave of pitches is calculated only with
242 the note names, regardless of any alterations.  Therefore, an
243 E-double-sharp following a B will be placed higher, while an
244 F-double-flat will be placed lower.  In other words, a
245 double-augmented fourth is considered a smaller interval than a
246 double-diminished fifth, regardless of the number of semitones
247 that each interval contains.
248
249 @lilypond[verbatim,quote]
250 \relative c'' {
251   c2 fis
252   c2 ges
253   b2 eisis
254   b2 feses
255 }
256 @end lilypond
257
258
259 @seealso
260 Music Glossary:
261 @rglos{fifth},
262 @rglos{interval},
263 @rglos{Pitch names}.
264
265 Notation Reference:
266 @ref{Octave checks}.
267
268 Snippets:
269 @rlsr{Pitches}.
270
271 Internals Reference:
272 @rinternals{RelativeOctaveMusic}.
273
274
275 @cindex relative octave entry and transposition
276 @cindex transposition and relative octave entry
277
278 @funindex \transpose
279 @funindex transpose
280 @funindex \chordmode
281 @funindex chordmode
282 @funindex \relative
283 @funindex relative
284
285
286 @c DEPRECATED
287 If no @code{@var{startpitch}} is specified for @code{\relative},
288 then@tie{}@code{c'} is assumed.  However, this is a deprecated
289 option and may disappear in future versions, so its use is
290 discouraged.
291
292
293
294 @node Accidentals
295 @unnumberedsubsubsec Accidentals
296
297 @cindex accidental
298 @cindex key signature
299 @cindex clef
300
301 @c duplicated in Key signature and Accidentals
302 @warning{New users are sometimes confused about accidentals and
303 key signatures.  In LilyPond, note names are the raw input; key
304 signatures and clefs determine how this raw input is displayed.
305 An unaltered note like@tie{}@code{c} means @q{C natural},
306 regardless of the key signature or clef.  For more information,
307 see @rlearning{Accidentals and key signatures}.}
308
309 @cindex note names, Dutch
310 @cindex note names, default
311 @cindex default note names
312 @cindex sharp
313 @cindex flat
314 @cindex double sharp
315 @cindex sharp, double
316 @cindex double flat
317 @cindex flat, double
318 @cindex natural sign
319 @cindex natural pitch
320
321 A @notation{sharp} pitch is made by adding @code{is} to the note
322 name, and a @notation{flat} pitch by adding @code{es}.  As you
323 might expect, a @notation{double sharp} or @notation{double flat}
324 is made by adding @code{isis} or @code{eses}.  This syntax is
325 derived from Dutch note naming conventions.  To use other names
326 for accidentals, see @ref{Note names in other languages}.
327
328 @lilypond[verbatim,quote,relative=2]
329 ais1 aes aisis aeses
330 @end lilypond
331
332 A natural will cancel the effect of an accidental or key
333 signature.  However, naturals are not encoded into the note name
334 syntax with a suffix; a natural pitch is shown as a simple note
335 name:
336
337 @lilypond[verbatim,quote,relative=2]
338 a4 aes a2
339 @end lilypond
340
341 @cindex quarter tones
342 @cindex semi-flats
343 @cindex semi-sharps
344
345 Quarter tones may be added; the following is a series of Cs with
346 increasing pitches:
347
348 @lilypond[verbatim,quote,relative=2]
349 ceseh1 ces ceh c cih cis cisih
350 @end lilypond
351
352
353
354 @cindex accidental, reminder
355 @cindex accidental, cautionary
356 @cindex accidental, parenthesized
357 @cindex reminder accidental
358 @cindex cautionary accidental
359 @cindex parenthesized accidental
360
361 @funindex ?
362 @funindex !
363
364
365 Normally accidentals are printed automatically, but you may also
366 print them manually.  A reminder accidental can be forced by
367 adding an exclamation mark@tie{}@code{!} after the pitch.  A
368 cautionary accidental (i.e., an accidental within parentheses) can
369 be obtained by adding the question mark@tie{}@code{?} after the
370 pitch.  These extra accidentals can also be used to produce
371 natural signs.
372
373 @lilypond[verbatim,quote,relative=2]
374 cis cis cis! cis? c c c! c?
375 @end lilypond
376
377 @cindex accidental on tied note
378 @cindex tied note, accidental
379
380 Accidentals on tied notes are only printed at the beginning of a
381 new system:
382
383 @lilypond[verbatim,quote,relative=2]
384 cis1~ cis~
385 \break
386 cis
387 @end lilypond
388
389
390 @snippets
391
392 @lilypondfile[verbatim,lilyquote,texidoc,doctitle,ragged-right]
393 {hiding-accidentals-on-tied-notes-at-the-start-of-a-new-system.ly}
394
395 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
396 {preventing-extra-naturals-from-being-automatically-added.ly}
397
398 @seealso
399 Music Glossary:
400 @rglos{sharp},
401 @rglos{flat},
402 @rglos{double sharp},
403 @rglos{double flat},
404 @rglos{Pitch names},
405 @rglos{quarter tone}.
406
407 Learning Manual:
408 @rlearning{Accidentals and key signatures}.
409
410 Notation Reference:
411 @ref{Automatic accidentals},
412 @ref{Annotational accidentals (musica ficta)},
413 @ref{Note names in other languages}.
414
415 Snippets:
416 @rlsr{Pitches}.
417
418 Internals Reference:
419 @rinternals{Accidental_engraver},
420 @rinternals{Accidental},
421 @rinternals{AccidentalCautionary},
422 @rinternals{accidental-interface}.
423
424
425 @cindex accidental, quarter-tone
426 @cindex quarter-tone accidental
427
428 @knownissues
429
430 There are no generally accepted standards for denoting
431 quarter-tone accidentals, so LilyPond's symbol does not conform to
432 any standard.
433
434
435
436 @node Note names in other languages
437 @unnumberedsubsubsec Note names in other languages
438
439 @cindex note names, other languages
440 @cindex pitch names, other languages
441 @cindex language, note names in other
442 @cindex language, pitch names in other
443
444 There are predefined sets of note and accidental names for various
445 other languages.  Selecting the note name language is usually done
446 at the beginning of the file; the following example is written
447 using Italian note names:
448
449 @lilypond[quote,verbatim]
450 \language "italiano"
451
452 \relative do' {
453   do re mi sib
454 }
455 @end lilypond
456
457 The available languages and the note names they define are:
458
459 @quotation
460 @multitable {@code{nederlands}} {do re mi fa sol la sib si}
461 @headitem Language
462   @tab Note Names
463 @item @code{nederlands}
464   @tab c d e f g a bes b
465 @item @code{catalan}
466   @tab do re mi fa sol la sib si
467 @item @code{deutsch}
468   @tab c d e f g a b h
469 @item @code{english}
470   @tab c d e f g a bf b
471 @item @code{espanol}
472   @tab do re mi fa sol la sib si
473 @item @code{italiano}
474   @tab do re mi fa sol la sib si
475 @item @code{norsk}
476   @tab c d e f g a b h
477 @item @code{portugues}
478   @tab do re mi fa sol la sib si
479 @item @code{suomi}
480   @tab c d e f g a b h
481 @item @code{svenska}
482   @tab c d e f g a b h
483 @item @code{vlaams}
484   @tab do re mi fa sol la sib si
485 @end multitable
486 @end quotation
487
488 In addition to note names, accidental suffixes may
489 also vary depending on the language:
490
491 @quotation
492 @multitable {@code{nederlands}} {-s/-sharp} {-ess/-es} {-ss/-x/-sharpsharp} {-essess/-eses}
493 @headitem Language
494   @tab sharp @tab flat @tab double sharp @tab double flat
495 @item @code{nederlands}
496   @tab -is @tab -es @tab -isis @tab -eses
497 @item @code{catalan}
498   @tab -d/-s @tab -b @tab -dd/-ss @tab -bb
499 @item @code{deutsch}
500   @tab -is @tab -es @tab -isis @tab -eses
501 @item @code{english}
502   @tab -s/-sharp @tab -f/-flat @tab -ss/-x/-sharpsharp
503     @tab -ff/-flatflat
504 @item @code{espanol}
505   @tab -s @tab -b @tab -ss/-x @tab -bb
506 @item @code{italiano}
507   @tab -d @tab -b @tab -dd @tab -bb
508 @item @code{norsk}
509   @tab -iss/-is @tab -ess/-es @tab -ississ/-isis
510     @tab -essess/-eses
511 @item @code{portugues}
512   @tab -s @tab -b @tab -ss @tab -bb
513 @item @code{suomi}
514   @tab -is @tab -es @tab -isis @tab -eses
515 @item @code{svenska}
516   @tab -iss @tab -ess @tab -ississ @tab -essess
517 @item @code{vlaams}
518   @tab -k @tab -b @tab -kk @tab -bb
519 @end multitable
520 @end quotation
521
522 In Dutch, @code{aes} is contracted to @code{as}, but both forms
523 are accepted in LilyPond.  Similarly, both @code{es} and
524 @code{ees} are accepted.  This also applies to
525 @code{aeses}@tie{}/@tie{}@code{ases} and
526 @code{eeses}@tie{}/@tie{}@code{eses}.  Sometimes only these
527 contracted names are defined in the corresponding language files.
528
529 @lilypond[verbatim,quote,relative=2]
530 a2 as e es a ases e eses
531 @end lilypond
532
533
534 @cindex microtones
535 @cindex semi-sharp
536 @cindex semi-flat
537 @cindex sesqui-sharp
538 @cindex sesqui-flat
539
540 Some music uses microtones whose alterations are fractions of a
541 @q{normal} sharp or flat.  The following table lists note names
542 for quarter-tone accidentals in various languages; here the prefixes
543 @notation{semi-} and @notation{sesqui-} respectively
544 mean @q{half} and @q{one and a half}.  Languages that do not
545 appear in this table do not provide special note names yet.
546
547 @quotation
548 @multitable {@code{nederlands}} {@b{semi-sharp}} {@b{semi-flat}} {@b{sesqui-sharp}} {@b{sesqui-flat}}
549 @headitem Language
550   @tab semi-sharp @tab semi-flat @tab sesqui-sharp @tab sesqui-flat
551
552 @item @code{nederlands}
553   @tab -ih @tab -eh @tab -isih @tab -eseh
554 @item @code{deutsch}
555   @tab -ih @tab -eh @tab -isih @tab -eseh
556 @item @code{english}
557   @tab -qs @tab -qf @tab -tqs @tab -tqf
558 @item @code{espanol}
559   @tab -cs @tab -cb @tab -tcs @tab -tcb
560 @item @code{italiano}
561   @tab -sd @tab -sb @tab -dsd @tab -bsb
562 @item @code{portugues}
563   @tab -sqt @tab -bqt @tab -stqt @tab -btqt
564 @end multitable
565 @end quotation
566
567 Most languages presented here are commonly associated with
568 Western classical music, also referred to as
569 @notation{Common Practice Period}.  However, alternate
570 pitches and tuning systems are also supported: see
571 @ref{Common notation for non-Western music}.
572
573
574 @seealso
575 Music Glossary:
576 @rglos{Pitch names},
577 @rglos{Common Practice Period}.
578
579 Notation Reference:
580 @ref{Common notation for non-Western music}.
581
582 Installed Files:
583 @file{scm/define-note-names.scm}.
584
585 Snippets:
586 @rlsr{Pitches}.
587
588
589 @node Changing multiple pitches
590 @subsection Changing multiple pitches
591
592 This section discusses how to modify pitches.
593
594 @menu
595 * Octave checks::
596 * Transpose::
597 * Inversion::
598 * Retrograde::
599 * Modal transformations::
600 @end menu
601
602 @node Octave checks
603 @unnumberedsubsubsec Octave checks
604
605 @cindex octave correction
606 @cindex octave check
607 @cindex control pitch
608
609 @funindex =
610 @funindex \octaveCheck
611 @funindex octaveCheck
612 @funindex controlpitch
613
614 In relative mode, it is easy to forget an octave changing mark.
615 Octave checks make such errors easier to find by displaying a
616 warning and correcting the octave if a note is found in an
617 unexpected octave.
618
619 To check the octave of a note, specify the absolute octave after
620 the @code{=}@tie{}symbol.  This example will generate a warning
621 (and change the pitch) because the second note is the absolute
622 octave @code{d''} instead of @code{d'} as indicated by the octave
623 correction.
624
625 @lilypond[verbatim,quote]
626 \relative c'' {
627   c2 d='4 d
628   e2 f
629 }
630 @end lilypond
631
632 The octave of notes may also be checked with the
633 @code{\octaveCheck@tie{}@var{controlpitch}} command.
634 @code{@var{controlpitch}} is specified in absolute mode.  This
635 checks that the interval between the previous note and the
636 @code{@var{controlpitch}} is within a fourth (i.e., the normal
637 calculation of relative mode).  If this check fails, a warning is
638 printed, but the previous note is not changed.  Future notes are
639 relative to the @code{@var{controlpitch}}.
640
641 @lilypond[verbatim,quote]
642 \relative c'' {
643   c2 d
644   \octaveCheck c'
645   e2 f
646 }
647 @end lilypond
648
649 Compare the two bars below.  The first and third @code{\octaveCheck}
650 checks fail, but the second one does not fail.
651
652 @lilypond[verbatim,quote]
653 \relative c'' {
654   c4 f g f
655
656   c4
657   \octaveCheck c'
658   f
659   \octaveCheck c'
660   g
661   \octaveCheck c'
662   f
663 }
664 @end lilypond
665
666
667 @seealso
668 Snippets:
669 @rlsr{Pitches}.
670
671 Internals Reference:
672 @rinternals{RelativeOctaveCheck}.
673
674
675 @node Transpose
676 @unnumberedsubsubsec Transpose
677
678 @cindex transpose
679 @cindex transposing
680 @cindex transposition
681 @cindex transposition of pitches
682 @cindex transposition of notes
683 @cindex pitches, transposition of
684 @cindex notes, transposition of
685
686 @funindex \transpose
687 @funindex transpose
688
689 A music expression can be transposed with @code{\transpose}.  The
690 syntax is
691
692 @example
693 \transpose @var{frompitch} @var{topitch} @var{musicexpr}
694 @end example
695
696 @noindent
697 This means that @code{@var{musicexpr}} is transposed by the
698 interval between the pitches @code{@var{frompitch}} and
699 @code{@var{topitch}}: any note with pitch @code{@var{frompitch}}
700 is changed to @code{@var{topitch}} and any other note is
701 transposed by the same interval.  Both pitches are entered in
702 absolute mode.
703
704 @warning{Music inside a @code{@bs{}transpose} block is absolute
705 unless a @code{@bs{}relative} is included in the block.}
706
707 Consider a piece written in the key of D-major.  It can be
708 transposed up to E-major; note that the key signature is
709 automatically transposed as well.
710
711 @lilypond[verbatim,quote]
712 \transpose d e {
713   \relative c' {
714     \key d \major
715     d4 fis a d
716   }
717 }
718 @end lilypond
719
720 @cindex transposing instruments
721 @cindex instruments, transposing
722
723 If a part written in C (normal @notation{concert pitch}) is to be
724 played on the A clarinet (for which an A is notated as a C and
725 thus sounds a minor third lower than notated), the appropriate
726 part will be produced with:
727
728 @lilypond[verbatim,quote]
729 \transpose a c' {
730   \relative c' {
731     \key c \major
732     c4 d e g
733   }
734 }
735 @end lilypond
736
737 @noindent
738 Note that we specify @w{@code{\key c \major}} explicitly.  If we
739 do not specify a key signature, the notes will be transposed but
740 no key signature will be printed.
741
742 @code{\transpose} distinguishes between enharmonic pitches: both
743 @w{@code{\transpose c cis}} or @w{@code{\transpose c des}} will
744 transpose up a semitone.  The first version will print sharps and
745 the notes will remain on the same scale step, the second version
746 will print flats on the scale step above.
747
748 @lilypond[verbatim,quote]
749 music = \relative c' { c d e f }
750 \new Staff {
751   \transpose c cis { \music }
752   \transpose c des { \music }
753 }
754 @end lilypond
755
756
757 @code{\transpose} may also be used in a different way, to input
758 written notes for a transposing instrument.  The previous examples
759 show how to enter pitches in C (or @notation{concert pitch}) and
760 typeset them for a transposing instrument, but the opposite is
761 also possible if you for example have a set of instrumental parts
762 and want to print a conductor's score.  For example, when entering
763 music for a B-flat trumpet that begins on a notated E (concert D),
764 one would write:
765
766 @example
767 musicInBflat = @{ e4 @dots{} @}
768 \transpose c bes, \musicInBflat
769 @end example
770
771 @noindent
772 To print this music in F (e.g., rearranging to a French horn) you
773 could wrap the existing music with another @code{\transpose}:
774
775 @example
776 musicInBflat = @{ e4 @dots{} @}
777 \transpose f c' @{ \transpose c bes, \musicInBflat @}
778 @end example
779
780 @noindent
781 For more information about transposing instruments,
782 see @ref{Instrument transpositions}.
783
784
785 @snippets
786
787 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
788 {transposing-pitches-with-minimum-accidentals-smart-transpose.ly}
789
790
791 @seealso
792 Notation Reference:
793 @ref{Instrument transpositions},
794 @ref{Inversion},
795 @ref{Modal transformations},
796 @ref{Relative octave entry},
797 @ref{Retrograde}.
798
799 Snippets:
800 @rlsr{Pitches}.
801
802 Internals Reference:
803 @rinternals{TransposedMusic}.
804
805
806 @funindex \transpose
807 @funindex transpose
808 @funindex \chordmode
809 @funindex chordmode
810 @funindex \relative
811 @funindex relative
812
813 @knownissues
814
815 The relative conversion will not affect @code{\transpose},
816 @code{\chordmode} or @code{\relative} sections in its argument.
817 To use relative mode within transposed music, an additional
818 @code{\relative} must be placed inside @code{\transpose}.
819
820 @node Inversion
821 @unnumberedsubsubsec Inversion
822
823 @cindex inversion
824 @cindex operation, inversion
825 @funindex \inversion
826
827 A music expression can be inverted with:
828
829 @example
830 \inversion @var{from-pitch} @var{to-pitch} @var{musicexpr}
831 @end example
832
833 The @code{@var{musicexpr}} is inverted interval-by-interval,
834 and then transposed so that @code{@var{from-pitch}} is mapped
835 to @code{@var{to-pitch}}.
836
837 @lilypond[verbatim,quote]
838 music = \relative c' { c d e f }
839 \new Staff {
840   \music
841   \inversion d' d' \music
842   \inversion d' ees' \music
843 }
844 @end lilypond
845
846 @seealso
847 Notation Reference:
848 @ref{Modal transformations},
849 @ref{Retrograde},
850 @ref{Transpose}.
851
852
853 @node Retrograde
854 @unnumberedsubsubsec Retrograde
855
856 @cindex retrograde transformation
857 @cindex transformation, retrograde
858 @cindex operation, retrograde
859 @funindex \retrograde
860 @funindex retrograde
861
862 A music expression can be reversed to produce its retrograde:
863
864 @lilypond[verbatim,quote]
865 music = \relative c' { c8. ees16( fis8. a16 b8.) gis16 f8. d16 }
866
867 \new Staff {
868   \music
869   \retrograde \music
870 }
871 @end lilypond
872
873 @knownissues
874 Manual ties inside @code{\retrograde} will be broken and
875 generate warnings.  Some ties can be generated automatically
876 by enabling @ref{Automatic note splitting}.
877
878 @seealso
879 Notation Reference:
880 @ref{Inversion},
881 @ref{Modal transformations},
882 @ref{Transpose}.
883
884
885 @node Modal transformations
886 @unnumberedsubsubsec Modal transformations
887
888 @cindex modal transformations
889 @cindex transformations, modal
890 @cindex operations, modal
891
892 In a musical composition that is based on a scale, a motif is
893 frequently transformed in various ways.  It may be
894 @notation{transposed} to start at different places in the scale or
895 it may be @notation{inverted} around a pivot point in the scale.
896 It may also be reversed to produce its @notation{retrograde}, see
897 @ref{Retrograde}.
898
899 @warning{Any note that does not lie within the given scale will be
900 left untransformed.}
901
902 @subsubheading Modal transposition
903
904 @cindex modal transposition
905 @cindex transposition, modal
906 @cindex operation, transposition
907 @funindex \modalTranspose
908 @funindex modalTranspose
909
910 A motif can be transposed within a given scale with:
911
912 @example
913 \modalTranspose @var{from-pitch} @var{to-pitch} @var{scale} @var{motif}
914 @end example
915
916 The notes of @var{motif} are shifted within the @var{scale} by the
917 number of scale degrees given by the interval between @var{to-pitch}
918 and @var{from-pitch}:
919
920 @lilypond[verbatim,quote]
921 diatonicScale = \relative c' { c d e f g a b }
922 motif = \relative c' { c8 d e f g a b c }
923
924 \new Staff {
925   \motif
926   \modalTranspose c f \diatonicScale \motif
927   \modalTranspose c b, \diatonicScale \motif
928 }
929 @end lilypond
930
931 An ascending scale of any length and with any intervals may be
932 specified:
933
934 @lilypond[verbatim,quote]
935 pentatonicScale = \relative c' { ges aes bes des ees }
936 motif = \relative c' { ees8 des ges,4 <ges' bes,> <ges bes,> }
937
938 \new Staff {
939   \motif
940   \modalTranspose ges ees' \pentatonicScale \motif
941 }
942 @end lilypond
943
944 When used with a chromatic scale @code{\modalTranspose} has a
945 similar effect to @code{\transpose}, but with the ability to
946 specify the names of the notes to be used:
947
948 @lilypond[verbatim,quote]
949 chromaticScale = \relative c' { c cis d dis e f fis g gis a ais b }
950 motif = \relative c' { c8 d e f g a b c }
951
952 \new Staff {
953   \motif
954   \transpose c f \motif
955   \modalTranspose c f \chromaticScale \motif
956 }
957 @end lilypond
958
959 @subsubheading Modal inversion
960
961 @cindex modal inversion
962 @cindex inversion, modal
963 @cindex operation, modal inversion
964 @funindex \modalInversion
965 @funindex modalInversion
966
967 A motif can be inverted within a given scale around a given pivot
968 note and transposed in a single operation with:
969
970 @example
971 \modalInversion @var{around-pitch} @var{to-pitch} @var{scale} @var{motif}
972 @end example
973
974 The notes of @var{motif} are placed the same number of scale degrees
975 from the @var{around-pitch} note within the @var{scale}, but in the
976 opposite direction, and the result is then shifted within the
977 @var{scale} by the number of scale degrees given by the interval between
978 @var{to-pitch} and @var{around-pitch}.
979
980 So to simply invert around a note in the scale use the same value for
981 @var{around-pitch} and @var{to-pitch}:
982
983 @lilypond[verbatim,quote]
984 octatonicScale = \relative c' { ees f fis gis a b c d }
985 motif = \relative c' { c8. ees16 fis8. a16 b8. gis16 f8. d16 }
986
987 \new Staff {
988   \motif
989   \modalInversion fis' fis' \octatonicScale \motif
990 }
991 @end lilypond
992
993 To invert around a pivot between two notes in the scale, invert around
994 one of the notes and then transpose by one scale degree.  The two notes
995 specified can be interpreted as bracketing the pivot point:
996
997 @lilypond[verbatim,quote]
998 scale = \relative c' { c g' }
999 motive = \relative c' { c c g' c, }
1000
1001 \new Staff {
1002   \motive
1003   \modalInversion c' g' \scale \motive
1004 }
1005 @end lilypond
1006
1007 The combined operation of inversion and retrograde produce the
1008 retrograde-inversion:
1009
1010 @lilypond[verbatim,quote]
1011 octatonicScale = \relative c' { ees f fis gis a b c d }
1012 motif = \relative c' { c8. ees16 fis8. a16 b8. gis16 f8. d16 }
1013
1014 \new Staff {
1015   \motif
1016   \retrograde \modalInversion c' c' \octatonicScale \motif
1017 }
1018 @end lilypond
1019
1020 @seealso
1021 Notation Reference:
1022 @ref{Inversion},
1023 @ref{Retrograde},
1024 @ref{Transpose}.
1025
1026
1027 @node Displaying pitches
1028 @subsection Displaying pitches
1029
1030 This section discusses how to alter the output of pitches.
1031
1032 @menu
1033 * Clef::
1034 * Key signature::
1035 * Ottava brackets::
1036 * Instrument transpositions::
1037 * Automatic accidentals::
1038 * Ambitus::
1039 @end menu
1040
1041
1042 @node Clef
1043 @unnumberedsubsubsec Clef
1044
1045 @cindex G clef
1046 @cindex C clef
1047 @cindex F clef
1048 @cindex treble clef
1049 @cindex violin clef
1050 @cindex alto clef
1051 @cindex tenor clef
1052 @cindex bass clef
1053 @cindex french clef
1054 @cindex soprano clef
1055 @cindex mezzosoprano clef
1056 @cindex baritone clef
1057 @cindex varbaritone clef
1058 @cindex subbass clef
1059 @cindex clef
1060 @cindex ancient clef
1061 @cindex clef, ancient
1062 @cindex clef, G
1063 @cindex clef, C
1064 @cindex clef, F
1065 @cindex clef, treble
1066 @cindex clef, violin
1067 @cindex clef, alto
1068 @cindex clef, tenor
1069 @cindex clef, bass
1070 @cindex clef, french
1071 @cindex clef, soprano
1072 @cindex clef, mezzosoprano
1073 @cindex clef, baritone
1074 @cindex clef, varbaritone
1075 @cindex clef, subbass
1076
1077
1078 @funindex \clef
1079 @funindex clef
1080
1081 The clef may be altered.  Middle C is shown in every example.  The
1082 following clef names can (but do not need to) be enclosed in quotes.
1083
1084 @lilypond[verbatim,quote,relative=1]
1085 \clef treble
1086 c2 c
1087 \clef alto
1088 c2 c
1089 \clef tenor
1090 c2 c
1091 \clef bass
1092 c2 c
1093 @end lilypond
1094
1095 Other clefs include:
1096
1097 @lilypond[verbatim,quote,relative=1]
1098 \clef french
1099 c2 c
1100 \clef soprano
1101 c2 c
1102 \clef mezzosoprano
1103 c2 c
1104 \clef baritone
1105 c2 c
1106
1107 \break
1108
1109 \clef varbaritone
1110 c2 c
1111 \clef subbass
1112 c2 c
1113 \clef percussion
1114 c2 c
1115
1116 \break
1117
1118 \clef G   % synonym for treble
1119 c2 c
1120 \clef F   % synonym for bass
1121 c2 c
1122 \clef C   % synonym for alto
1123 c2 c
1124 @end lilypond
1125
1126 @cindex transposing clef
1127 @cindex clef, transposing
1128 @cindex octave transposition
1129 @cindex choral tenor clef
1130 @cindex tenor clef, choral
1131
1132 By adding@tie{}@code{_8} or@tie{}@code{^8} to the clef name, the
1133 clef is transposed one octave down or up respectively,
1134 and@tie{}@code{_15} and@tie{}@code{^15} transpose by two octaves.
1135 Other integers can be used if required.  Clef names containing
1136 non-alphabetic characters must be enclosed in quotes
1137
1138 @lilypond[verbatim,quote,relative=1]
1139 \clef treble
1140 c2 c
1141 \clef "treble_8"
1142 c2 c
1143 \clef "bass^15"
1144 c2 c
1145 \clef "alto_2"
1146 c2 c
1147 \clef "G_8"
1148 c2 c
1149 \clef "F^5"
1150 c2 c
1151 @end lilypond
1152
1153 Some special purpose clefs are described in @ref{Mensural clefs},
1154 @ref{Gregorian clefs}, @ref{Default tablatures}, and @ref{Custom
1155 tablatures}.
1156
1157 @snippets
1158
1159 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
1160 {tweaking-clef-properties.ly}
1161
1162
1163 @seealso
1164 Notation Reference:
1165 @ref{Mensural clefs},
1166 @ref{Gregorian clefs},
1167 @ref{Default tablatures},
1168 @ref{Custom tablatures}.
1169
1170 Snippets:
1171 @rlsr{Pitches}.
1172
1173 Internals Reference:
1174 @rinternals{Clef_engraver},
1175 @rinternals{Clef},
1176 @rinternals{OctavateEight},
1177 @rinternals{clef-interface}.
1178
1179
1180 @node Key signature
1181 @unnumberedsubsubsec Key signature
1182
1183 @cindex key signature
1184
1185 @funindex \key
1186 @funindex key
1187
1188 @c duplicated in Key signature and Accidentals
1189 @warning{New users are sometimes confused about accidentals and
1190 key signatures.  In LilyPond, note names are the raw input; key
1191 signatures and clefs determine how this raw input is displayed.
1192 An unaltered note like@tie{}@code{c} means @q{C natural},
1193 regardless of the key signature or clef.  For more information,
1194 see @rlearning{Accidentals and key signatures}.}
1195
1196 The key signature indicates the tonality in which a piece is
1197 played.  It is denoted by a set of alterations (flats or sharps)
1198 at the start of the staff.  The key signature may be altered:
1199
1200 @example
1201 \key @var{pitch} @var{mode}
1202 @end example
1203
1204 @funindex \major
1205 @funindex major
1206 @funindex \minor
1207 @funindex minor
1208 @funindex \ionian
1209 @funindex ionian
1210 @funindex \locrian
1211 @funindex locrian
1212 @funindex \aeolian
1213 @funindex aeolian
1214 @funindex \mixolydian
1215 @funindex mixolydian
1216 @funindex \lydian
1217 @funindex lydian
1218 @funindex \phrygian
1219 @funindex phrygian
1220 @funindex \dorian
1221 @funindex dorian
1222
1223 @cindex church modes
1224 @cindex modes
1225 @cindex major
1226 @cindex minor
1227 @cindex ionian
1228 @cindex locrian
1229 @cindex aeolian
1230 @cindex mixolydian
1231 @cindex lydian
1232 @cindex phrygian
1233 @cindex dorian
1234
1235 @noindent
1236 Here, @code{@var{mode}} should be @code{\major} or @code{\minor}
1237 to get a key signature of @code{@var{pitch}}-major or
1238 @code{@var{pitch}}-minor, respectively.  You may also use the
1239 standard mode names, also called @notation{church modes}:
1240 @code{\ionian}, @code{\dorian}, @code{\phrygian}, @code{\lydian},
1241 @code{\mixolydian}, @code{\aeolian}, and @code{\locrian}.
1242
1243 @lilypond[verbatim,quote,relative=2]
1244 \key g \major
1245 fis1
1246 f
1247 fis
1248 @end lilypond
1249
1250
1251 @snippets
1252
1253 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
1254 {preventing-natural-signs-from-being-printed-when-the-key-signature-changes.ly}
1255
1256 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
1257 {non-traditional-key-signatures.ly}
1258
1259
1260 @seealso
1261 Music Glossary:
1262 @rglos{church mode},
1263 @rglos{scordatura}.
1264
1265 Learning Manual:
1266 @rlearning{Accidentals and key signatures}.
1267
1268 Snippets:
1269 @rlsr{Pitches}.
1270
1271 Internals Reference:
1272 @rinternals{KeyChangeEvent},
1273 @rinternals{Key_engraver},
1274 @rinternals{Key_performer},
1275 @rinternals{KeyCancellation},
1276 @rinternals{KeySignature},
1277 @rinternals{key-cancellation-interface},
1278 @rinternals{key-signature-interface}.
1279
1280
1281 @node Ottava brackets
1282 @unnumberedsubsubsec Ottava brackets
1283
1284 @cindex ottava
1285 @cindex 15ma
1286 @cindex 8va
1287 @cindex 8ve
1288 @cindex octavation
1289
1290 @funindex set-octavation
1291 @funindex \ottava
1292 @funindex ottava
1293
1294 @notation{Ottava brackets} introduce an extra transposition of an
1295 octave for the staff:
1296
1297 @lilypond[verbatim,quote,relative=2]
1298 a2 b
1299 \ottava #-2
1300 a2 b
1301 \ottava #-1
1302 a2 b
1303 \ottava #0
1304 a2 b
1305 \ottava #1
1306 a2 b
1307 \ottava #2
1308 a2 b
1309 @end lilypond
1310
1311 @snippets
1312
1313 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
1314 {ottava-text.ly}
1315
1316
1317 @seealso
1318 Music Glossary:
1319 @rglos{octavation}.
1320
1321 Snippets:
1322 @rlsr{Pitches}.
1323
1324 Internals Reference:
1325 @rinternals{Ottava_spanner_engraver},
1326 @rinternals{OttavaBracket},
1327 @rinternals{ottava-bracket-interface}.
1328
1329
1330 @node Instrument transpositions
1331 @unnumberedsubsubsec Instrument transpositions
1332
1333 @cindex transposition, MIDI
1334 @cindex transposition, instrument
1335 @cindex transposing instrument
1336 @cindex MIDI
1337 @cindex MIDI transposition
1338
1339 @funindex \transposition
1340 @funindex transposition
1341
1342 When typesetting scores that involve transposing instruments, some
1343 parts can be typeset in a different pitch than the
1344 @notation{concert pitch}.  In these cases, the key of the
1345 @notation{transposing instrument} should be specified; otherwise
1346 the MIDI output and cues in other parts will produce incorrect
1347 pitches.  For more information about quotations, see
1348 @ref{Quoting other voices}.
1349
1350 @example
1351 \transposition @var{pitch}
1352 @end example
1353
1354 The pitch to use for @code{\transposition} should correspond to
1355 the real sound heard when a@tie{}@code{c'} written on the staff is
1356 played by the transposing instrument.  This pitch is entered in
1357 absolute mode, so an instrument that produces a real sound which
1358 is one tone higher than the printed music should use
1359 @w{@code{\transposition d'}}.  @code{\transposition} should
1360 @emph{only} be used if the pitches are @emph{not} being entered in
1361 concert pitch.
1362
1363 Here are a few notes for violin and B-flat clarinet where the
1364 parts have been entered using the notes and key as they appear in
1365 each part of the conductor's score.  The two instruments are
1366 playing in unison.
1367
1368 @lilypond[verbatim,quote]
1369 \new GrandStaff <<
1370   \new Staff = "violin" {
1371     \relative c'' {
1372       \set Staff.instrumentName = #"Vln"
1373       \set Staff.midiInstrument = #"violin"
1374       % not strictly necessary, but a good reminder
1375       \transposition c'
1376
1377       \key c \major
1378       g4( c8) r c r c4
1379     }
1380   }
1381   \new Staff = "clarinet" {
1382     \relative c'' {
1383       \set Staff.instrumentName = \markup { Cl (B\flat) }
1384       \set Staff.midiInstrument = #"clarinet"
1385       \transposition bes
1386
1387       \key d \major
1388       a4( d8) r d r d4
1389     }
1390   }
1391 >>
1392 @end lilypond
1393
1394 The @code{\transposition} may be changed during a piece.  For
1395 example, a clarinetist may switch from an A clarinet to a B-flat
1396 clarinet.
1397
1398 @lilypond[verbatim,quote,relative=2]
1399 \set Staff.instrumentName = #"Cl (A)"
1400 \key a \major
1401 \transposition a
1402 c d e f
1403 \textLengthOn
1404 s1*0^\markup { Switch to B\flat clarinet }
1405 R1
1406
1407 \key bes \major
1408 \transposition bes
1409 c2 g
1410 @end lilypond
1411
1412
1413 @seealso
1414 Music Glossary:
1415 @rglos{concert pitch},
1416 @rglos{transposing instrument}.
1417
1418 Notation Reference:
1419 @ref{Quoting other voices},
1420 @ref{Transpose}.
1421
1422 Snippets:
1423 @rlsr{Pitches}.
1424
1425
1426 @node Automatic accidentals
1427 @unnumberedsubsubsec Automatic accidentals
1428
1429 @cindex accidental style
1430 @cindex accidental style, default
1431 @cindex accidentals
1432 @cindex accidentals, automatic
1433 @cindex automatic accidentals
1434 @cindex default accidental style
1435
1436 @funindex set-accidental-style
1437 @funindex voice
1438 @funindex default
1439
1440 There are many different conventions on how to typeset
1441 accidentals.  LilyPond provides a function to specify which
1442 accidental style to use.  This function is called as follows:
1443
1444 @example
1445 \new Staff <<
1446   #(set-accidental-style 'voice)
1447   @{ @dots{} @}
1448 >>
1449 @end example
1450
1451 The accidental style applies to the current @code{Staff} by
1452 default (with the exception of the styles @code{piano} and
1453 @code{piano-cautionary}, which are explained below).  Optionally,
1454 the function can take a second argument that determines in which
1455 scope the style should be changed.  For example, to use the same
1456 style in all staves of the current @code{StaffGroup}, use:
1457
1458 @example
1459 #(set-accidental-style 'voice 'StaffGroup)
1460 @end example
1461
1462 The following accidental styles are supported.  To demonstrate
1463 each style, we use the following example:
1464
1465
1466 @lilypond[verbatim,quote]
1467 musicA = {
1468   <<
1469     \relative c' {
1470       cis'8 fis, bes4 <a cis>8 f bis4 |
1471       cis2. <c, g'>4 |
1472     }
1473     \\
1474     \relative c' {
1475       ais'2 cis, |
1476       fis8 b a4 cis2 |
1477     }
1478   >>
1479 }
1480
1481 musicB = {
1482   \clef bass
1483   \new Voice {
1484     \voiceTwo \relative c' {
1485       <fis, a cis>8 <fis a cis>
1486       \change Staff = up
1487       cis' cis
1488       \change Staff = down
1489       <fis, a> <fis a>
1490       \showStaffSwitch
1491       \change Staff = up
1492       dis'4 |
1493       \change Staff = down
1494       <fis, a cis>4 gis <f a d>2 |
1495     }
1496   }
1497 }
1498
1499 \new PianoStaff {
1500   <<
1501     \context Staff = "up" {
1502       #(set-accidental-style 'default)
1503       \musicA
1504     }
1505     \context Staff = "down" {
1506       #(set-accidental-style 'default)
1507       \musicB
1508     }
1509   >>
1510 }
1511 @end lilypond
1512
1513 Note that the last lines of this example can be replaced by the
1514 following, as long as the same accidental style should be used in
1515 both staves.
1516
1517 @example
1518 \new PianoStaff @{
1519   <<
1520     \context Staff = "up" @{
1521       %%% change the next line as desired:
1522       #(set-accidental-style 'default 'Score)
1523       \musicA
1524     @}
1525     \context Staff = "down" @{
1526       \musicB
1527     @}
1528   >>
1529 @}
1530 @end example
1531
1532
1533 @c don't use verbatim in this table.
1534 @table @code
1535 @item default
1536
1537 @cindex default accidental style
1538 @cindex accidental style, default
1539
1540 @funindex default
1541
1542 This is the default typesetting behavior.  It corresponds to
1543 eighteenth-century common practice: accidentals are remembered to
1544 the end of the measure in which they occur and only in their own
1545 octave.  Thus, in the example below, no natural signs are printed
1546 before the@tie{}@code{b} in the second measure or the
1547 last@tie{}@code{c}:
1548
1549 @lilypond[quote]
1550 musicA = {
1551   <<
1552     \relative c' {
1553       cis'8 fis, bes4 <a cis>8 f bis4 |
1554       cis2. <c, g'>4 |
1555     }
1556     \\
1557     \relative c' {
1558       ais'2 cis, |
1559       fis8 b a4 cis2 |
1560     }
1561   >>
1562 }
1563
1564 musicB = {
1565   \clef bass
1566   \new Voice {
1567     \voiceTwo \relative c' {
1568       <fis, a cis>8 <fis a cis>
1569       \change Staff = up
1570       cis' cis
1571       \change Staff = down
1572       <fis, a> <fis a>
1573       \showStaffSwitch
1574       \change Staff = up
1575       dis'4 |
1576       \change Staff = down
1577       <fis, a cis>4 gis <f a d>2 |
1578     }
1579   }
1580 }
1581
1582 \new PianoStaff {
1583   <<
1584     \context Staff = "up" {
1585       #(set-accidental-style 'default)
1586       \musicA
1587     }
1588     \context Staff = "down" {
1589       #(set-accidental-style 'default)
1590       \musicB
1591     }
1592   >>
1593 }
1594 @end lilypond
1595
1596 @item voice
1597
1598 @cindex accidental style, voice
1599 @cindex voice accidental style
1600 @cindex accidental style, modern
1601 @cindex modern accidental style
1602 @cindex accidental style, modern-cautionary
1603 @cindex modern-cautionary accidental style
1604
1605 @funindex voice
1606
1607 The normal behavior is to remember the accidentals at
1608 @code{Staff}-level.  In this style, however, accidentals are
1609 typeset individually for each voice.  Apart from that, the rule is
1610 similar to @code{default}.
1611
1612 As a result, accidentals from one voice do not get canceled in
1613 other voices, which is often an unwanted result: in the following
1614 example, it is hard to determine whether the second@tie{}@code{a}
1615 should be played natural or sharp.  The @code{voice} option should
1616 therefore be used only if the voices are to be read solely by
1617 individual musicians.  If the staff is to be used by one musician
1618 (e.g., a conductor or in a piano score) then @code{modern} or
1619 @code{modern-cautionary} should be used instead.
1620
1621
1622 @lilypond[quote]
1623 musicA = {
1624   <<
1625     \relative c' {
1626       cis'8 fis, bes4 <a cis>8 f bis4 |
1627       cis2. <c, g'>4 |
1628     }
1629     \\
1630     \relative c' {
1631       ais'2 cis, |
1632       fis8 b a4 cis2 |
1633     }
1634   >>
1635 }
1636
1637 musicB = {
1638   \clef bass
1639   \new Voice {
1640     \voiceTwo \relative c' {
1641       <fis, a cis>8 <fis a cis>
1642       \change Staff = up
1643       cis' cis
1644       \change Staff = down
1645       <fis, a> <fis a>
1646       \showStaffSwitch
1647       \change Staff = up
1648       dis'4 |
1649       \change Staff = down
1650       <fis, a cis>4 gis <f a d>2 |
1651     }
1652   }
1653 }
1654
1655 \new PianoStaff {
1656   <<
1657     \context Staff = "up" {
1658       #(set-accidental-style 'voice)
1659       \musicA
1660     }
1661     \context Staff = "down" {
1662       #(set-accidental-style 'voice)
1663       \musicB
1664     }
1665   >>
1666 }
1667 @end lilypond
1668
1669 @item modern
1670
1671 @cindex accidentals, modern style
1672 @cindex modern style accidentals
1673
1674 @funindex modern
1675
1676 This rule corresponds to the common practice in the twentieth
1677 century.  It omits some extra natural signs, which were
1678 traditionally prefixed to accidentals that reduce or reverse
1679 the direction of a previous alteration.  The @code{modern} rule
1680 prints the same accidentals as @code{default}, with
1681 two exceptions that serve to avoid ambiguity: after temporary
1682 accidentals, cancellation marks are printed also in the following
1683 measure (for notes in the same octave) and, in the same measure,
1684 for notes in other octaves.  Hence the naturals before
1685 the@tie{}@code{b} and the@tie{}@code{c} in the second measure of
1686 the upper staff:
1687
1688 @lilypond[quote]
1689 musicA = {
1690   <<
1691     \relative c' {
1692       cis'8 fis, bes4 <a cis>8 f bis4 |
1693       cis2. <c, g'>4 |
1694     }
1695     \\
1696     \relative c' {
1697       ais'2 cis, |
1698       fis8 b a4 cis2 |
1699     }
1700   >>
1701 }
1702
1703 musicB = {
1704   \clef bass
1705   \new Voice {
1706     \voiceTwo \relative c' {
1707       <fis, a cis>8 <fis a cis>
1708       \change Staff = up
1709       cis' cis
1710       \change Staff = down
1711       <fis, a> <fis a>
1712       \showStaffSwitch
1713       \change Staff = up
1714       dis'4 |
1715       \change Staff = down
1716       <fis, a cis>4 gis <f a d>2 |
1717     }
1718   }
1719 }
1720
1721 \new PianoStaff {
1722   <<
1723     \context Staff = "up" {
1724       #(set-accidental-style 'modern)
1725       \musicA
1726     }
1727     \context Staff = "down" {
1728       #(set-accidental-style 'modern)
1729       \musicB
1730     }
1731   >>
1732 }
1733 @end lilypond
1734
1735 @item modern-cautionary
1736
1737 @cindex accidentals, modern cautionary style
1738 @cindex modern accidental style
1739 @cindex modern cautionary accidental style
1740 @cindex modern style accidentals
1741 @cindex modern style cautionary accidentals
1742
1743 @funindex modern-cautionary
1744
1745 This rule is similar to @code{modern}, but the @q{extra}
1746 accidentals (the ones not typeset by @code{default}) are typeset
1747 as cautionary accidentals.  They are by default printed with
1748 parentheses, but they can also be printed in reduced size by
1749 defining the @code{cautionary-style} property of
1750 @code{AccidentalSuggestion}.
1751
1752 @lilypond[quote]
1753 musicA = {
1754   <<
1755     \relative c' {
1756       cis'8 fis, bes4 <a cis>8 f bis4 |
1757       cis2. <c, g'>4 |
1758     }
1759     \\
1760     \relative c' {
1761       ais'2 cis, |
1762       fis8 b a4 cis2 |
1763     }
1764   >>
1765 }
1766
1767 musicB = {
1768   \clef bass
1769   \new Voice {
1770     \voiceTwo \relative c' {
1771       <fis, a cis>8 <fis a cis>
1772       \change Staff = up
1773       cis' cis
1774       \change Staff = down
1775       <fis, a> <fis a>
1776       \showStaffSwitch
1777       \change Staff = up
1778       dis'4 |
1779       \change Staff = down
1780       <fis, a cis>4 gis <f a d>2 |
1781     }
1782   }
1783 }
1784
1785 \new PianoStaff {
1786   <<
1787     \context Staff = "up" {
1788       #(set-accidental-style 'modern-cautionary)
1789       \musicA
1790     }
1791     \context Staff = "down" {
1792       #(set-accidental-style 'modern-cautionary)
1793       \musicB
1794     }
1795   >>
1796 }
1797 @end lilypond
1798
1799 @item modern-voice
1800
1801 @cindex accidental style, modern
1802 @cindex accidentals, modern
1803 @cindex accidentals, multivoice
1804 @cindex modern accidental style
1805 @cindex modern accidentals
1806 @cindex multivoice accidentals
1807
1808 @funindex modern-voice
1809
1810 This rule is used for multivoice accidentals to be read both by
1811 musicians playing one voice and musicians playing all voices.
1812 Accidentals are typeset for each voice, but they @emph{are}
1813 canceled across voices in the same @code{Staff}.  Hence,
1814 the@tie{}@code{a} in the last measure is canceled because the
1815 previous cancellation was in a different voice, and
1816 the@tie{}@code{d} in the lower staff is canceled because of the
1817 accidental in a different voice in the previous measure:
1818
1819 @lilypond[quote]
1820 musicA = {
1821   <<
1822     \relative c' {
1823       cis'8 fis, bes4 <a cis>8 f bis4 |
1824       cis2. <c, g'>4 |
1825     }
1826     \\
1827     \relative c' {
1828       ais'2 cis, |
1829       fis8 b a4 cis2 |
1830     }
1831   >>
1832 }
1833
1834 musicB = {
1835   \clef bass
1836   \new Voice {
1837     \voiceTwo \relative c' {
1838       <fis, a cis>8 <fis a cis>
1839       \change Staff = up
1840       cis' cis
1841       \change Staff = down
1842       <fis, a> <fis a>
1843       \showStaffSwitch
1844       \change Staff = up
1845       dis'4 |
1846       \change Staff = down
1847       <fis, a cis>4 gis <f a d>2 |
1848     }
1849   }
1850 }
1851
1852 \new PianoStaff {
1853   <<
1854     \context Staff = "up" {
1855       #(set-accidental-style 'modern-voice)
1856       \musicA
1857     }
1858     \context Staff = "down" {
1859       #(set-accidental-style 'modern-voice)
1860       \musicB
1861     }
1862   >>
1863 }
1864 @end lilypond
1865
1866 @cindex accidental style, cautionary, modern voice
1867 @cindex accidental style, modern voice cautionary
1868 @cindex accidental style, voice, modern cautionary
1869
1870 @funindex modern-voice-cautionary
1871
1872 @item modern-voice-cautionary
1873
1874 This rule is the same as @code{modern-voice}, but with the extra
1875 accidentals (the ones not typeset by @code{voice}) typeset as
1876 cautionaries.  Even though all accidentals typeset by
1877 @code{default} @emph{are} typeset with this rule, some of them are
1878 typeset as cautionaries.
1879
1880 @lilypond[quote]
1881 musicA = {
1882   <<
1883     \relative c' {
1884       cis'8 fis, bes4 <a cis>8 f bis4 |
1885       cis2. <c, g'>4 |
1886     }
1887     \\
1888     \relative c' {
1889       ais'2 cis, |
1890       fis8 b a4 cis2 |
1891     }
1892   >>
1893 }
1894
1895 musicB = {
1896   \clef bass
1897   \new Voice {
1898     \voiceTwo \relative c' {
1899       <fis, a cis>8 <fis a cis>
1900       \change Staff = up
1901       cis' cis
1902       \change Staff = down
1903       <fis, a> <fis a>
1904       \showStaffSwitch
1905       \change Staff = up
1906       dis'4 |
1907       \change Staff = down
1908       <fis, a cis>4 gis <f a d>2 |
1909     }
1910   }
1911 }
1912
1913 \new PianoStaff {
1914   <<
1915     \context Staff = "up" {
1916       #(set-accidental-style 'modern-voice-cautionary)
1917       \musicA
1918     }
1919     \context Staff = "down" {
1920       #(set-accidental-style 'modern-voice-cautionary)
1921       \musicB
1922     }
1923   >>
1924 }
1925 @end lilypond
1926
1927 @item piano
1928
1929 @cindex accidental style, piano
1930 @cindex accidentals, piano
1931 @cindex piano accidental style
1932 @cindex piano accidentals
1933
1934 @funindex piano
1935
1936 This rule reflects twentieth-century practice for piano notation.
1937 Its behavior is very similar to @code{modern} style, but here
1938 accidentals also get canceled across the staves in the same
1939 @code{GrandStaff} or @code{PianoStaff}, hence all the
1940 cancellations of the final notes.
1941
1942 This accidental style applies to the current @code{GrandStaff} or
1943 @code{PianoStaff} by default.
1944
1945 @lilypond[quote]
1946 musicA = {
1947   <<
1948     \relative c' {
1949       cis'8 fis, bes4 <a cis>8 f bis4 |
1950       cis2. <c, g'>4 |
1951     }
1952     \\
1953     \relative c' {
1954       ais'2 cis, |
1955       fis8 b a4 cis2 |
1956     }
1957   >>
1958 }
1959
1960 musicB = {
1961   \clef bass
1962   \new Voice {
1963     \voiceTwo \relative c' {
1964       <fis, a cis>8 <fis a cis>
1965       \change Staff = up
1966       cis' cis
1967       \change Staff = down
1968       <fis, a> <fis a>
1969       \showStaffSwitch
1970       \change Staff = up
1971       dis'4 |
1972       \change Staff = down
1973       <fis, a cis>4 gis <f a d>2 |
1974     }
1975   }
1976 }
1977
1978 \new PianoStaff {
1979   <<
1980     \context Staff = "up" {
1981       #(set-accidental-style 'piano)
1982       \musicA
1983     }
1984     \context Staff = "down" {
1985       \musicB
1986     }
1987   >>
1988 }
1989 @end lilypond
1990
1991 @item piano-cautionary
1992
1993 @cindex accidentals, piano cautionary
1994 @cindex cautionary accidentals, piano
1995 @cindex piano cautionary accidentals
1996 @cindex accidental style, piano cautionary
1997 @cindex cautionary accidental style, piano
1998 @cindex piano cautionary accidental style
1999
2000 @funindex piano-cautionary
2001
2002 This is the same as @code{piano} but with the extra accidentals
2003 typeset as cautionaries.
2004
2005 @lilypond[quote]
2006 musicA = {
2007   <<
2008     \relative c' {
2009       cis'8 fis, bes4 <a cis>8 f bis4 |
2010       cis2. <c, g'>4 |
2011     }
2012     \\
2013     \relative c' {
2014       ais'2 cis, |
2015       fis8 b a4 cis2 |
2016     }
2017   >>
2018 }
2019
2020 musicB = {
2021   \clef bass
2022   \new Voice {
2023     \voiceTwo \relative c' {
2024       <fis, a cis>8 <fis a cis>
2025       \change Staff = up
2026       cis' cis
2027       \change Staff = down
2028       <fis, a> <fis a>
2029       \showStaffSwitch
2030       \change Staff = up
2031       dis'4 |
2032       \change Staff = down
2033       <fis, a cis>4 gis <f a d>2 |
2034     }
2035   }
2036 }
2037
2038 \new PianoStaff {
2039   <<
2040     \context Staff = "up" {
2041       #(set-accidental-style 'piano-cautionary)
2042       \musicA
2043     }
2044     \context Staff = "down" {
2045       \musicB
2046     }
2047   >>
2048 }
2049 @end lilypond
2050
2051
2052 @item neo-modern
2053
2054 @cindex neo-modern accidental style
2055 @cindex accidental style, neo-modern
2056
2057 @funindex neo-modern
2058
2059 This rule reproduces a common practice in contemporary music:
2060 accidentals are printed like with @code{modern}, but they are printed
2061 again if the same note appears later in the same measure -- except
2062 if the note is immediately repeated.
2063
2064 @lilypond[quote]
2065 musicA = {
2066   <<
2067     \relative c' {
2068       cis'8 fis, bes4 <a cis>8 f bis4 |
2069       cis2. <c, g'>4 |
2070     }
2071     \\
2072     \relative c' {
2073       ais'2 cis, |
2074       fis8 b a4 cis2 |
2075     }
2076   >>
2077 }
2078
2079 musicB = {
2080   \clef bass
2081   \new Voice {
2082     \voiceTwo \relative c' {
2083       <fis, a cis>8 <fis a cis>
2084       \change Staff = up
2085       cis' cis
2086       \change Staff = down
2087       <fis, a> <fis a>
2088       \showStaffSwitch
2089       \change Staff = up
2090       dis'4 |
2091       \change Staff = down
2092       <fis, a cis>4 gis <f a d>2 |
2093     }
2094   }
2095 }
2096
2097 \new PianoStaff {
2098   <<
2099     \context Staff = "up" {
2100       #(set-accidental-style 'neo-modern)
2101       \musicA
2102     }
2103     \context Staff = "down" {
2104       #(set-accidental-style 'neo-modern)
2105       \musicB
2106     }
2107   >>
2108 }
2109 @end lilypond
2110
2111 @item neo-modern-cautionary
2112
2113 @cindex neo-modern-cautionary accidental style
2114 @cindex accidental style, neo-modern-cautionary
2115
2116 @funindex neo-modern-cautionary
2117
2118 This rule is similar to @code{neo-modern}, but the extra
2119 accidentals are printed as cautionary accidentals.
2120
2121 @lilypond[quote]
2122 musicA = {
2123   <<
2124     \relative c' {
2125       cis'8 fis, bes4 <a cis>8 f bis4 |
2126       cis2. <c, g'>4 |
2127     }
2128     \\
2129     \relative c' {
2130       ais'2 cis, |
2131       fis8 b a4 cis2 |
2132     }
2133   >>
2134 }
2135
2136 musicB = {
2137   \clef bass
2138   \new Voice {
2139     \voiceTwo \relative c' {
2140       <fis, a cis>8 <fis a cis>
2141       \change Staff = up
2142       cis' cis
2143       \change Staff = down
2144       <fis, a> <fis a>
2145       \showStaffSwitch
2146       \change Staff = up
2147       dis'4 |
2148       \change Staff = down
2149       <fis, a cis>4 gis <f a d>2 |
2150     }
2151   }
2152 }
2153
2154 \new PianoStaff {
2155   <<
2156     \context Staff = "up" {
2157       #(set-accidental-style 'neo-modern-cautionary)
2158       \musicA
2159     }
2160     \context Staff = "down" {
2161       #(set-accidental-style 'neo-modern-cautionary)
2162       \musicB
2163     }
2164   >>
2165 }
2166 @end lilypond
2167
2168
2169 @item neo-modern-voice
2170
2171 @cindex neo-modern-voice accidental style
2172 @cindex accidental style, neo-modern-voice
2173
2174 @funindex neo-modern-voice
2175
2176 This rule is used for multivoice accidentals to be read both by
2177 musicians playing one voice and musicians playing all voices.
2178 Accidentals are typeset for each voice as with @code{neo-modern},
2179 but they are canceled across voices in the same @code{Staff}.
2180
2181 @lilypond[quote]
2182 musicA = {
2183   <<
2184     \relative c' {
2185       cis'8 fis, bes4 <a cis>8 f bis4 |
2186       cis2. <c, g'>4 |
2187     }
2188     \\
2189     \relative c' {
2190       ais'2 cis, |
2191       fis8 b a4 cis2 |
2192     }
2193   >>
2194 }
2195
2196 musicB = {
2197   \clef bass
2198   \new Voice {
2199     \voiceTwo \relative c' {
2200       <fis, a cis>8 <fis a cis>
2201       \change Staff = up
2202       cis' cis
2203       \change Staff = down
2204       <fis, a> <fis a>
2205       \showStaffSwitch
2206       \change Staff = up
2207       dis'4 |
2208       \change Staff = down
2209       <fis, a cis>4 gis <f a d>2 |
2210     }
2211   }
2212 }
2213
2214 \new PianoStaff {
2215   <<
2216     \context Staff = "up" {
2217       #(set-accidental-style 'neo-modern-voice)
2218       \musicA
2219     }
2220     \context Staff = "down" {
2221       #(set-accidental-style 'neo-modern-voice)
2222       \musicB
2223     }
2224   >>
2225 }
2226 @end lilypond
2227
2228 @item neo-modern-voice-cautionary
2229
2230 @cindex neo-modern-voice-cautionary accidental style
2231 @cindex accidental style, neo-modern-voice-cautionary
2232
2233 @funindex neo-modern-voice-cautionary
2234
2235 This rule is similar to @code{neo-modern-voice}, but the extra
2236 accidentals are printed as cautionary accidentals.
2237
2238 @lilypond[quote]
2239 musicA = {
2240   <<
2241     \relative c' {
2242       cis'8 fis, bes4 <a cis>8 f bis4 |
2243       cis2. <c, g'>4 |
2244     }
2245     \\
2246     \relative c' {
2247       ais'2 cis, |
2248       fis8 b a4 cis2 |
2249     }
2250   >>
2251 }
2252
2253 musicB = {
2254   \clef bass
2255   \new Voice {
2256     \voiceTwo \relative c' {
2257       <fis, a cis>8 <fis a cis>
2258       \change Staff = up
2259       cis' cis
2260       \change Staff = down
2261       <fis, a> <fis a>
2262       \showStaffSwitch
2263       \change Staff = up
2264       dis'4 |
2265       \change Staff = down
2266       <fis, a cis>4 gis <f a d>2 |
2267     }
2268   }
2269 }
2270
2271 \new PianoStaff {
2272   <<
2273     \context Staff = "up" {
2274       #(set-accidental-style 'neo-modern-voice-cautionary)
2275       \musicA
2276     }
2277     \context Staff = "down" {
2278       #(set-accidental-style 'neo-modern-voice-cautionary)
2279       \musicB
2280     }
2281   >>
2282 }
2283 @end lilypond
2284
2285 @item dodecaphonic
2286
2287 @cindex dodecaphonic accidental style
2288 @cindex dodecaphonic style, neo-modern
2289
2290 @funindex dodecaphonic
2291
2292 This rule reflects a practice introduced by composers at
2293 the beginning of the 20th century, in an attempt to
2294 abolish the hierarchy between natural and non-natural notes.
2295 With this style, @emph{every} note gets an accidental sign,
2296 including natural signs.
2297
2298 @lilypond[quote]
2299 musicA = {
2300   <<
2301     \relative c' {
2302       cis'8 fis, bes4 <a cis>8 f bis4 |
2303       cis2. <c, g'>4 |
2304     }
2305     \\
2306     \relative c' {
2307       ais'2 cis, |
2308       fis8 b a4 cis2 |
2309     }
2310   >>
2311 }
2312
2313 musicB = {
2314   \clef bass
2315   \new Voice {
2316     \voiceTwo \relative c' {
2317       <fis, a cis>8 <fis a cis>
2318       \change Staff = up
2319       cis' cis
2320       \change Staff = down
2321       <fis, a> <fis a>
2322       \showStaffSwitch
2323       \change Staff = up
2324       dis'4 |
2325       \change Staff = down
2326       <fis, a cis>4 gis <f a d>2 |
2327     }
2328   }
2329 }
2330
2331 \new PianoStaff {
2332   <<
2333     \context Staff = "up" {
2334       #(set-accidental-style 'dodecaphonic)
2335       \musicA
2336     }
2337     \context Staff = "down" {
2338       #(set-accidental-style 'dodecaphonic)
2339       \musicB
2340     }
2341   >>
2342 }
2343 @end lilypond
2344
2345
2346 @item teaching
2347
2348 @cindex teaching accidental style
2349 @cindex accidental style, teaching
2350
2351 @funindex teaching
2352
2353 This rule is intended for students, and makes it easy to create
2354 scale sheets with automatically created cautionary accidentals.
2355 Accidentals are printed like with @code{modern}, but cautionary
2356 accidentals are added for all sharp or flat tones specified by the
2357 key signature, except if the note is immediately repeated.
2358
2359 @lilypond[quote]
2360 musicA = {
2361   <<
2362     \relative c' {
2363       cis'8 fis, bes4 <a cis>8 f bis4 |
2364       cis2. <c, g'>4 |
2365     }
2366     \\
2367     \relative c' {
2368       ais'2 cis, |
2369       fis8 b a4 cis2 |
2370     }
2371   >>
2372 }
2373
2374 musicB = {
2375   \clef bass
2376   \new Voice {
2377     \voiceTwo \relative c' {
2378       <fis, a cis>8 <fis a cis>
2379       \change Staff = up
2380       cis' cis
2381       \change Staff = down
2382       <fis, a> <fis a>
2383       \showStaffSwitch
2384       \change Staff = up
2385       dis'4 |
2386       \change Staff = down
2387       <fis, a cis>4 gis <f a d>2 |
2388     }
2389   }
2390 }
2391
2392 \new PianoStaff {
2393   <<
2394     \context Staff = "up" {
2395       \key fis \minor
2396       #(set-accidental-style 'teaching)
2397       \musicA
2398     }
2399     \context Staff = "down" {
2400       \key fis \minor
2401       #(set-accidental-style 'teaching)
2402       \musicB
2403     }
2404   >>
2405 }
2406 @end lilypond
2407
2408
2409
2410 @item no-reset
2411
2412 @cindex accidental style, no reset
2413 @cindex no reset accidental style
2414
2415 @funindex no-reset
2416
2417 This is the same as @code{default} but with accidentals lasting
2418 @q{forever} and not only within the same measure:
2419
2420 @lilypond[quote]
2421 musicA = {
2422   <<
2423     \relative c' {
2424       cis'8 fis, bes4 <a cis>8 f bis4 |
2425       cis2. <c, g'>4 |
2426     }
2427     \\
2428     \relative c' {
2429       ais'2 cis, |
2430       fis8 b a4 cis2 |
2431     }
2432   >>
2433 }
2434
2435 musicB = {
2436   \clef bass
2437   \new Voice {
2438     \voiceTwo \relative c' {
2439       <fis, a cis>8 <fis a cis>
2440       \change Staff = up
2441       cis' cis
2442       \change Staff = down
2443       <fis, a> <fis a>
2444       \showStaffSwitch
2445       \change Staff = up
2446       dis'4 |
2447       \change Staff = down
2448       <fis, a cis>4 gis <f a d>2 |
2449     }
2450   }
2451 }
2452
2453 \new PianoStaff {
2454   <<
2455     \context Staff = "up" {
2456       #(set-accidental-style 'no-reset)
2457       \musicA
2458     }
2459     \context Staff = "down" {
2460       #(set-accidental-style 'no-reset)
2461       \musicB
2462     }
2463   >>
2464 }
2465 @end lilypond
2466
2467 @item forget
2468
2469 @cindex forget accidental style
2470 @cindex accidental style, forget
2471
2472 @funindex forget
2473
2474 This is the opposite of @code{no-reset}: Accidentals are not
2475 remembered at all -- and hence all accidentals are typeset
2476 relative to the key signature, regardless of what came before in
2477 the music.
2478
2479 @lilypond[quote]
2480 musicA = {
2481   <<
2482     \relative c' {
2483       cis'8 fis, bes4 <a cis>8 f bis4 |
2484       cis2. <c, g'>4 |
2485     }
2486     \\
2487     \relative c' {
2488       ais'2 cis, |
2489       fis8 b a4 cis2 |
2490     }
2491   >>
2492 }
2493
2494 musicB = {
2495   \clef bass
2496   \new Voice {
2497     \voiceTwo \relative c' {
2498       <fis, a cis>8 <fis a cis>
2499       \change Staff = up
2500       cis' cis
2501       \change Staff = down
2502       <fis, a> <fis a>
2503       \showStaffSwitch
2504       \change Staff = up
2505       dis'4 |
2506       \change Staff = down
2507       <fis, a cis>4 gis <f a d>2 |
2508     }
2509   }
2510 }
2511
2512 \new PianoStaff {
2513   <<
2514     \context Staff = "up" {
2515       #(set-accidental-style 'forget)
2516       \musicA
2517     }
2518     \context Staff = "down" {
2519       #(set-accidental-style 'forget)
2520       \musicB
2521     }
2522   >>
2523 }
2524 @end lilypond
2525 @end table
2526
2527 @seealso
2528 Snippets:
2529 @rlsr{Pitches}.
2530
2531 Internals Reference:
2532 @rinternals{Accidental},
2533 @rinternals{Accidental_engraver},
2534 @rinternals{GrandStaff},
2535 @rinternals{PianoStaff},
2536 @rinternals{Staff},
2537 @rinternals{AccidentalSuggestion},
2538 @rinternals{AccidentalPlacement},
2539 @rinternals{accidental-suggestion-interface}.
2540
2541
2542 @cindex accidentals and simultaneous notes
2543 @cindex simultaneous notes and accidentals
2544 @cindex accidentals in chords
2545 @cindex chords, accidentals in
2546
2547 @knownissues
2548
2549 Simultaneous notes are not considered in the automatic
2550 determination of accidentals; only previous notes and the key
2551 signature are considered.  Forcing accidentals with@tie{}@code{!}
2552 or@tie{}@code{?} may be required when the same note name occurs
2553 simultaneously with different alterations, as in @samp{<f! fis!>}.
2554
2555 Cautionary cancellation of accidentals is done by looking at previous measure.
2556 However, in the @code{\alternative} block following a @code{\repeat volta N}
2557 section, one would expect the cancellation being calculated using the previous
2558 @emph{played} measure, not previous @emph{printed} measure.
2559 In the following example, the natural @code{c} in the second alternative does
2560 not need a natural sign:
2561
2562 @lilypond[quote]
2563 {
2564   #(set-accidental-style 'modern)
2565   \time 2/4
2566   \repeat volta 2 {
2567     c'2
2568   }
2569   \alternative {
2570      cis'
2571      c'
2572   }
2573 }
2574 @end lilypond
2575
2576 The following work-around can be used: define a function that locally changes
2577 the accidental style to @code{forget}:
2578
2579 @lilypond[verbatim,quote]
2580 forget = #(define-music-function (parser location music) (ly:music?) #{
2581   #(set-accidental-style 'forget)
2582   $music
2583   #(set-accidental-style 'modern)
2584 #})
2585 {
2586   #(set-accidental-style 'modern)
2587   \time 2/4
2588   \repeat volta 2 {
2589     c'2
2590   }
2591   \alternative {
2592      cis'
2593      \forget c'
2594   }
2595 }
2596 @end lilypond
2597
2598 @node Ambitus
2599 @unnumberedsubsubsec Ambitus
2600
2601 @cindex ambitus
2602 @cindex range of pitches
2603 @cindex pitch range
2604
2605 The term @notation{ambitus} (pl. ambitus) denotes a range of
2606 pitches for a given voice in a part of music.  It may also denote
2607 the pitch range that a musical instrument is capable of playing.
2608 Ambitus are printed on vocal parts so that performers can easily
2609 determine if it matches their capabilities.
2610
2611 Ambitus are denoted at the beginning of a piece near the initial
2612 clef.  The range is graphically specified by two note heads that
2613 represent the lowest and highest pitches.  Accidentals are only
2614 printed if they are not part of the key signature.
2615
2616 @lilypond[verbatim,quote]
2617 \layout {
2618   \context {
2619     \Voice
2620     \consists "Ambitus_engraver"
2621   }
2622 }
2623
2624 \relative c'' {
2625   aes c e2
2626   cis,1
2627 }
2628 @end lilypond
2629
2630
2631 @snippets
2632
2633 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
2634 {adding-ambitus-per-voice.ly}
2635
2636 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
2637 {ambitus-with-multiple-voices.ly}
2638
2639 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
2640 {changing-the-ambitus-gap.ly}
2641
2642
2643 @seealso
2644 Music Glossary:
2645 @rglos{ambitus}.
2646
2647 Snippets:
2648 @rlsr{Pitches}.
2649
2650 Internals Reference:
2651 @rinternals{Ambitus_engraver},
2652 @rinternals{Voice},
2653 @rinternals{Staff},
2654 @rinternals{Ambitus},
2655 @rinternals{AmbitusAccidental},
2656 @rinternals{AmbitusLine},
2657 @rinternals{AmbitusNoteHead},
2658 @rinternals{ambitus-interface}.
2659
2660
2661 @knownissues
2662
2663 There is no collision handling in the case of multiple per-voice
2664 ambitus.
2665
2666
2667 @node Note heads
2668 @subsection Note heads
2669
2670 This section suggests ways of altering note heads.
2671
2672 @menu
2673 * Special note heads::
2674 * Easy notation note heads::
2675 * Shape note heads::
2676 * Improvisation::
2677 @end menu
2678
2679 @node Special note heads
2680 @unnumberedsubsubsec Special note heads
2681
2682 @cindex note heads, special
2683 @cindex note heads, cross
2684 @cindex note heads, diamond
2685 @cindex note heads, parlato
2686 @cindex note heads, harmonic
2687 @cindex note heads, guitar
2688 @cindex special note heads
2689 @cindex cross note heads
2690 @cindex diamond note heads
2691 @cindex parlato note heads
2692 @cindex harmonic note heads
2693 @cindex guitar note heads
2694 @cindex note head styles
2695 @cindex styles, note heads
2696
2697 @funindex cross
2698
2699 The appearance of note heads may be altered:
2700
2701 @lilypond[verbatim,quote,relative=2]
2702 c4 b
2703 \override NoteHead #'style = #'cross
2704 c4 b
2705 \revert NoteHead #'style
2706 a b
2707 \override NoteHead #'style = #'harmonic
2708 a b
2709 \revert NoteHead #'style
2710 c4 d e f
2711 @end lilypond
2712
2713 To see all note head styles, see @ref{Note head styles}.
2714
2715 The @code{cross} style is used to represent a variety of musical
2716 intentions.  The following generic predefined commands modify the
2717 note head in both staff and tablature contexts and can be used to
2718 represent any musical meaning:
2719
2720 @lilypond[verbatim,quote,relative=2]
2721 c4 b
2722 \xNotesOn
2723  a b c4 b
2724 \xNotesOff
2725 c4 d
2726 @end lilypond
2727
2728 The music function form of this predefined command may be used
2729 inside and outside chords to generate crossed note heads in both
2730 staff and tablature contexts:
2731
2732 @lilypond[verbatim,quote,relative=2]
2733 c4 b
2734 \xNote { e f }
2735 c b < g \xNote c f > b
2736 @end lilypond
2737
2738 As synonyms for @code{\xNote}, @code{\xNotesOn} and @code{\xNotesOff},
2739 @code{\deadNote}, @code{\deadNotesOn} and @code{\deadNotesOff} can
2740 be used.  The term @notation{dead note} is commonly used by guitarists.
2741
2742 There is also a shorthand for diamond shapes which can be used
2743 only inside chords:
2744
2745 @lilypond[verbatim,quote,relative=2]
2746 <c f\harmonic>2 <d a'\harmonic>4 <c g'\harmonic>
2747 @end lilypond
2748
2749 @predefined
2750 @code{\harmonic},
2751 @code{\xNotesOn},
2752 @code{\xNotesOff},
2753 @code{\xNote}.
2754 @endpredefined
2755
2756 @seealso
2757 Snippets:
2758 @rlsr{Pitches}.
2759
2760 Notation Reference:
2761 @ref{Note head styles},
2762 @ref{Chorded notes},
2763 @ref{Indicating harmonics and dampened notes}.
2764
2765 Internals Reference:
2766 @rinternals{note-event},
2767 @rinternals{Note_heads_engraver},
2768 @rinternals{Ledger_line_engraver},
2769 @rinternals{NoteHead},
2770 @rinternals{LedgerLineSpanner},
2771 @rinternals{note-head-interface},
2772 @rinternals{ledger-line-spanner-interface}.
2773
2774
2775 @node Easy notation note heads
2776 @unnumberedsubsubsec Easy notation note heads
2777
2778 @cindex note heads, practice
2779 @cindex practice note heads
2780 @cindex note heads, easy notation
2781 @cindex easy notation
2782 @cindex beginners' music
2783 @cindex music, beginners'
2784 @cindex easy play note heads
2785 @cindex note heads, easy play
2786
2787 @funindex \easyHeadsOn
2788 @funindex easyHeadsOn
2789 @funindex \easyHeadsOff
2790 @funindex easyHeadsOff
2791
2792 The @q{easy play} note head includes a note name inside the head.
2793 It is used in music for beginners.  To make the letters readable,
2794 it should be printed in a large font size.  To print with a larger
2795 font, see @ref{Setting the staff size}.
2796
2797 @lilypond[verbatim,quote]
2798 #(set-global-staff-size 26)
2799 \relative c' {
2800   \easyHeadsOn
2801   c2 e4 f
2802   g1
2803   \easyHeadsOff
2804   c,1
2805 }
2806 @end lilypond
2807
2808
2809 @predefined
2810 @code{\easyHeadsOn},
2811 @code{\easyHeadsOff}.
2812 @endpredefined
2813
2814
2815 @snippets
2816
2817 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
2818 {numbers-as-easy-note-heads.ly}
2819
2820
2821 @seealso
2822 Notation Reference:
2823 @ref{Setting the staff size}.
2824
2825 Snippets:
2826 @rlsr{Pitches}.
2827
2828 Internals Reference:
2829 @rinternals{note-event},
2830 @rinternals{Note_heads_engraver},
2831 @rinternals{NoteHead},
2832 @rinternals{note-head-interface}.
2833
2834
2835 @node Shape note heads
2836 @unnumberedsubsubsec Shape note heads
2837
2838 @cindex note heads, shape
2839 @cindex note heads, Aiken
2840 @cindex note heads, sacred harp
2841 @cindex shape notes
2842 @cindex Aiken shape note heads
2843 @cindex sacred harp note heads
2844 @cindex note heads, Southern Harmony
2845 @cindex Southern Harmony note heads
2846 @cindex Funk shape note heads
2847 @cindex note heads, Funk
2848 @cindex note heads, Harmonica Sacra
2849 @cindex Harmonica Sacra note heads
2850 @cindex Christian Harmony note heads
2851 @cindex note heads, Christian Harmony
2852 @cindex Walker shape note heads
2853 @cindex note heads, Walker
2854
2855 @funindex \aikenHeads
2856 @funindex aikenHeads
2857 @funindex \sacredHarpHeads
2858 @funindex sacredHarpHeads
2859 @funindex \southernHarmonyHeads
2860 @funindex southernHarmonyHeads
2861 @funindex \funkHeads
2862 @funindex funkHeads
2863 @funindex \walkerHeads
2864 @funindex walkerHeads
2865
2866 In shape note head notation, the shape of the note head
2867 corresponds to the harmonic function of a note in the scale.  This
2868 notation was popular in nineteenth-century American song books.
2869 Shape note heads can be produced in Sacred Harp, Southern Harmony,
2870 Funk (Harmonica Sacra), Walker, and Aiken (Christian Harmony) styles:
2871
2872 @lilypond[verbatim,quote,relative=2]
2873 \aikenHeads
2874 c, d e f g2 a b1 c \break
2875 \sacredHarpHeads
2876 c,4 d e f g2 a b1 c \break
2877 \southernHarmonyHeads
2878 c,4 d e f g2 a b1 c \break
2879 \funkHeads
2880 c,4 d e f g2 a b1 c \break
2881 \walkerHeads
2882 c,4 d e f g2 a b1 c \break
2883 @end lilypond
2884
2885 @funindex \key
2886 @funindex key
2887 @funindex \aikenHeadsMinor
2888 @funindex aikenHeadsMinor
2889 @funindex \sacredHarpHeadsMinor
2890 @funindex sacredHarpHeadsMinor
2891 @funindex \southernHarmonyHeadsMinor
2892 @funindex southernHarmonyHeadsMinor
2893 @funindex \funkHeadsMinor
2894 @funindex funkHeadsMinor
2895 @funindex \walkerHeadsMinor
2896 @funindex walkerHeadsMinor
2897
2898 Shapes are typeset according to the step in the scale, where the base
2899 of the scale is determined by the @code{\key} command.  When writing
2900 in a minor key, the scale step can be determined from the relative
2901 major:
2902
2903 @lilypond[verbatim,quote,relative=2]
2904 \key a \minor
2905 \aikenHeads
2906 a b c d e2 f g1 a \break
2907 \aikenHeadsMinor
2908 a,4 b c d e2 f g1 a \break
2909 \sacredHarpHeadsMinor
2910 a,2 b c d \break
2911 \southernHarmonyHeadsMinor
2912 a2 b c d \break
2913 \funkHeadsMinor
2914 a2 b c d \break
2915 \walkerHeadsMinor
2916 a2 b c d \break
2917
2918 @end lilypond
2919
2920
2921 @predefined
2922 @code{\aikenHeads},
2923 @code{\aikenHeadsMinor},
2924 @code{\funkHeads},
2925 @code{\funkHeadsMinor},
2926 @code{\sacredHarpHeads},
2927 @code{\sacredHarpHeadsMinor},
2928 @code{\southernHarmonyHeads},
2929 @code{\southernHarmonyHeadsMinor},
2930 @code{\walkerHeads},
2931 @code{\walkerHeadsMinor}.
2932 @endpredefined
2933
2934
2935 @snippets
2936
2937 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
2938 {applying-note-head-styles-depending-on-the-step-of-the-scale.ly}
2939
2940 To see all note head styles, see @ref{Note head styles}.
2941
2942
2943 @seealso
2944 Snippets:
2945 @rlsr{Pitches}.
2946
2947 Notation Reference:
2948 @ref{Note head styles}.
2949
2950 Internals Reference:
2951 @rinternals{note-event},
2952 @rinternals{Note_heads_engraver},
2953 @rinternals{NoteHead},
2954 @rinternals{note-head-interface}.
2955
2956
2957 @node Improvisation
2958 @unnumberedsubsubsec Improvisation
2959
2960 @cindex improvisation
2961 @cindex slashed note heads
2962 @cindex note heads, improvisation
2963 @cindex note heads, slashed
2964
2965 @funindex \improvisationOn
2966 @funindex improvisationOn
2967 @funindex \improvisationOff
2968 @funindex improvisationOff
2969
2970 Improvisation is sometimes denoted with slashed note heads, where
2971 the performer may choose any pitch but should play the specified
2972 rhythm.  Such note heads can be created:
2973
2974 @lilypond[verbatim,quote,relative=2]
2975 \new Voice \with {
2976   \consists "Pitch_squash_engraver"
2977 } {
2978   e8 e g a a16( bes) a8 g
2979   \improvisationOn
2980   e8 ~
2981   e2 ~ e8 f4 f8 ~
2982   f2
2983   \improvisationOff
2984   a16( bes) a8 g e
2985 }
2986 @end lilypond
2987
2988
2989 @predefined
2990 @code{\improvisationOn},
2991 @code{\improvisationOff}.
2992 @endpredefined
2993
2994
2995 @seealso
2996 Snippets:
2997 @rlsr{Pitches}.
2998
2999 Internals Reference:
3000 @rinternals{Pitch_squash_engraver},
3001 @rinternals{Voice},
3002 @rinternals{RhythmicStaff}.