]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/notation/notation-appendices.itely
388c8bc388bb9cc7cf94d081bd1a46dce8c90e9e
[lilypond.git] / Documentation / notation / notation-appendices.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2
3 @ignore
4     Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes..
9 @end ignore
10
11 @c \version "2.19.28"
12
13 @node Notation manual tables
14 @appendix Notation manual tables
15
16 @menu
17 * Chord name chart::
18 * Common chord modifiers::
19 * Predefined string tunings::
20 * Predefined fretboard diagrams::
21 * Predefined paper sizes::
22 * MIDI instruments::
23 * List of colors::
24 * The Feta font::
25 * Note head styles::
26 * Clef styles::
27 * Text markup commands::
28 * Text markup list commands::
29 * List of special characters::
30 * List of articulations::
31 * Percussion notes::
32 * Technical glossary::
33 * All context properties::
34 * Layout properties::
35 * Available music functions::
36 * Context modification identifiers::
37 * Predefined type predicates::
38 * Scheme functions::
39 @end menu
40
41
42
43 @node Chord name chart
44 @appendixsec Chord name chart
45
46 The following chart shows two standard systems for printing chord
47 names, along with the pitches they represent.
48
49 @c The line width is a hack to allow space for instrument names
50 @lilypondfile[quote,line-width=15\cm]{chord-names-jazz.ly}
51
52 @node Common chord modifiers
53 @appendixsec Common chord modifiers
54
55 The following table shows chord modifiers that can be used to generate
56 standard chord structures.
57
58 @multitable @columnfractions .2 .25 .2 .15 .2
59
60 @item
61 @b{Type}
62 @tab
63 @b{Interval}
64 @tab
65 @b{Modifier}
66 @tab
67 @b{Example}
68 @tab
69 @b{Output}
70
71
72 @item
73 Major
74 @tab
75 Major third, @*perfect fifth
76 @tab
77 @code{5} or nothing
78 @tab
79 @code{c1:5}
80 @tab
81 @lilypond[line-width=2.1\cm,notime]
82 <<
83   \chords { c1:5 }
84   \chordmode { c1:5 }
85 >>
86 @end lilypond
87
88 @item
89 Minor
90 @tab
91 Minor third, @*perfect fifth
92 @tab
93 @code{m} or @code{m5}
94 @tab
95 @code{c1:m}
96 @tab
97 @lilypond[line-width=2.1\cm,noragged-right,notime]
98 <<
99   \chords { c1:m }
100   \chordmode { c1:m }
101 >>
102 @end lilypond
103
104 @item
105 Augmented
106 @tab
107 Major third, @*augmented fifth
108 @tab
109 @code{aug}
110 @tab
111 @code{c1:aug}
112 @tab
113 @lilypond[line-width=2.1\cm,noragged-right,notime]
114 <<
115   \chords { c1:aug }
116   \chordmode { c1:aug }
117 >>
118 @end lilypond
119
120 @item
121 Diminished
122 @tab
123 Minor third, @*diminished fifth
124 @tab
125 @code{dim}
126 @tab
127 @code{c1:dim}
128 @tab
129 @lilypond[line-width=2.1\cm,noragged-right,notime]
130 <<
131   \chords { c1:dim }
132   \chordmode { c1:dim }
133 >>
134 @end lilypond
135
136 @item
137 Dominant seventh
138 @tab
139 Major triad, @*minor seventh
140 @tab
141 @code{7}
142 @tab
143 @code{c1:7}
144 @tab
145 @lilypond[line-width=2.1\cm,noragged-right,notime]
146 <<
147   \chords { c1:7 }
148   \chordmode { c1:7 }
149 >>
150 @end lilypond
151
152 @item
153 Major seventh
154 @tab
155 Major triad, @*major seventh
156 @tab
157 @code{maj7} or @code{maj}
158 @tab
159 @code{c1:maj7}
160 @tab
161 @lilypond[line-width=2.1\cm,noragged-right,notime]
162 <<
163   \chords { c1:maj7 }
164   \chordmode { c1:maj7 }
165 >>
166 @end lilypond
167
168 @item
169 Minor seventh
170 @tab
171 Minor triad, @*minor seventh
172 @tab
173 @code{m7}
174 @tab
175 @code{c1:m7}
176 @tab
177 @lilypond[line-width=2.1\cm,noragged-right,notime]
178 <<
179   \chords { c1:m7 }
180   \chordmode { c1:m7 }
181 >>
182 @end lilypond
183
184 @item
185 Diminished seventh
186 @tab
187 Diminished triad, @*diminished seventh
188 @tab
189 @code{dim7}
190 @tab
191 @code{c1:dim7}
192 @tab
193 @lilypond[line-width=2.1\cm,noragged-right,notime]
194 <<
195   \chords { c1:dim7}
196   \chordmode { c1:dim7 }
197 >>
198 @end lilypond
199
200 @item
201 Augmented seventh
202 @tab
203 Augmented triad, @*minor seventh
204 @tab
205 @code{aug7}
206 @tab
207 @code{c1:aug7}
208 @tab
209 @lilypond[line-width=2.1\cm,noragged-right,notime]
210 <<
211   \chords { c1:aug7 }
212   \chordmode { c1:aug7 }
213 >>
214 @end lilypond
215
216 @item
217 Half-diminished seventh
218 @tab
219 Diminished triad, @*minor seventh
220 @tab
221 @code{m7.5-}
222 @tab
223 @code{c1:m7.5-}
224 @tab
225 @lilypond[line-width=2.1\cm,noragged-right,notime]
226 <<
227   \chords { c1:m7.5- }
228   \chordmode { c1:m7.5- }
229 >>
230 @end lilypond
231
232 @item
233 Minor-major seventh
234 @tab
235 Minor triad, @*major seventh
236 @tab
237 @code{m7+}
238 @tab
239 @code{c1:m7+}
240 @tab
241 @lilypond[line-width=2.1\cm,noragged-right,notime]
242 <<
243   \chords { c1:m7+ }
244   \chordmode { c1:m7+ }
245 >>
246 @end lilypond
247
248 @item
249 Major sixth
250 @tab
251 Major triad, @*sixth
252 @tab
253 @code{6}
254 @tab
255 @code{c1:6}
256 @tab
257 @lilypond[line-width=2.1\cm,noragged-right,notime]
258 <<
259   \chords { c1:6 }
260   \chordmode { c1:6 }
261 >>
262 @end lilypond
263
264 @item
265 Minor sixth
266 @tab
267 Minor triad, @*sixth
268 @tab
269 @code{m6}
270 @tab
271 @code{c1:m6}
272 @tab
273 @lilypond[line-width=2.1\cm,noragged-right,notime]
274 <<
275   \chords { c1:m6 }
276   \chordmode { c1:m6 }
277 >>
278 @end lilypond
279
280 @item
281 Dominant ninth
282 @tab
283 Dominant seventh, @*major ninth
284 @tab
285 @code{9}
286 @tab
287 @code{c1:9}
288 @tab
289 @lilypond[line-width=2.1\cm,noragged-right,notime]
290 <<
291   \chords { c1:9 }
292   \chordmode { c1:9 }
293 >>
294 @end lilypond
295
296 @item
297 Major ninth
298 @tab
299 Major seventh, @*major ninth
300 @tab
301 @code{maj9}
302 @tab
303 @code{c1:maj9}
304 @tab
305 @lilypond[line-width=2.1\cm,noragged-right,notime]
306 <<
307   \chords { c1:maj9 }
308   \chordmode { c1:maj9 }
309 >>
310 @end lilypond
311
312 @item
313 Minor ninth
314 @tab
315 Minor seventh, @*major ninth
316 @tab
317 @code{m9}
318 @tab
319 @code{c1:m9}
320 @tab
321 @lilypond[line-width=2.1\cm,noragged-right,notime]
322 <<
323   \chords { c1:m9 }
324   \chordmode { c1:m9 }
325 >>
326 @end lilypond
327
328 @item
329 Dominant eleventh
330 @tab
331 Dominant ninth, @*perfect eleventh
332 @tab
333 @code{11}
334 @tab
335 @code{c1:11}
336 @tab
337 @lilypond[line-width=2.1\cm,noragged-right,notime]
338 <<
339   \chords { c1:11 }
340   \chordmode { c1:11 }
341 >>
342 @end lilypond
343
344 @item
345 Major eleventh
346 @tab
347 Major ninth, @*perfect eleventh
348 @tab
349 @code{maj11}
350 @tab
351 @code{c1:maj11}
352 @tab
353 @lilypond[line-width=2.1\cm,noragged-right,notime]
354 <<
355   \chords { c1:maj11 }
356   \chordmode { c1:maj11 }
357 >>
358 @end lilypond
359
360 @item
361 Minor eleventh
362 @tab
363 Minor ninth, @*perfect eleventh
364 @tab
365 @code{m11}
366 @tab
367 @code{c1:m11}
368 @tab
369 @lilypond[line-width=2.1\cm,noragged-right,notime]
370 <<
371   \chords { c1:m11 }
372   \chordmode { c1:m11 }
373 >>
374 @end lilypond
375
376 @item
377 Dominant thirteenth
378 @tab
379 Dominant ninth, @*major thirteenth
380 @tab
381 @code{13}
382 @tab
383 @code{c1:13}
384 @tab
385 @lilypond[line-width=2.1\cm,noragged-right,notime]
386 <<
387   \chords { c1:13 }
388   \chordmode { c1:13 }
389 >>
390 @end lilypond
391
392 @item
393 Dominant thirteenth
394 @tab
395 Dominant eleventh, @*major thirteenth
396 @tab
397 @code{13.11}
398 @tab
399 @code{c1:13.11}
400 @tab
401 @lilypond[line-width=2.1\cm,noragged-right,notime]
402 <<
403   \chords{ c1:13.11 }
404   \chordmode { c1:13.11 }
405 >>
406 @end lilypond
407
408 @item
409 Major thirteenth
410 @tab
411 Major eleventh, @*major thirteenth
412 @tab
413 @code{maj13.11}
414 @tab
415 @code{c1:maj13.11}
416 @tab
417 @lilypond[line-width=2.1\cm,noragged-right,notime]
418 <<
419   \chords { c1:maj13.11 }
420   \chordmode { c1:maj13.11 }
421 >>
422 @end lilypond
423
424 @item
425 Minor thirteenth
426 @tab
427 Minor eleventh, @*major thirteenth
428 @tab
429 @code{m13.11}
430 @tab
431 @code{c1:m13.11}
432 @tab
433 @lilypond[line-width=2.1\cm,noragged-right,notime]
434 <<
435   \chords { c1:m13.11 }
436   \chordmode { c1:m13.11 }
437 >>
438 @end lilypond
439
440 @item
441 Suspended second
442 @tab
443 Major second, @*perfect fifth
444 @tab
445 @code{sus2}
446 @tab
447 @code{c1:sus2}
448 @tab
449 @lilypond[line-width=2.1\cm,noragged-right,notime]
450 <<
451   \chords { c1:sus2 }
452   \chordmode { c1:sus2 }
453 >>
454 @end lilypond
455
456 @item
457 Suspended fourth
458 @tab
459 Perfect fourth, @*perfect fifth
460 @tab
461 @code{sus4}
462 @tab
463 @code{c1:sus4}
464 @tab
465 @lilypond[line-width=2.1\cm,noragged-right,notime]
466 <<
467   \chords { c1:sus4 }
468   \chordmode { c1:sus4 }
469 >>
470 @end lilypond
471
472 @item
473 Power chord @*(two-voiced)
474 @tab
475 Perfect fifth
476 @tab
477 @code{1.5}
478 @tab
479 @code{\powerChords c1:5}
480 @tab
481 @lilypond[line-width=2.1\cm,noragged-right,notime]
482 \chordmode { \powerChords c1:5 }
483 @end lilypond
484
485 @item
486 Power chord @*@w{(three-voiced)}
487 @tab
488 Perfect fifth, @*octave
489 @tab
490 @code{1.5.8}
491 @tab
492 @code{\powerChords c1:5.8}
493 @tab
494 @lilypond[line-width=2.1\cm,noragged-right,notime]
495   \chordmode { \powerChords c1:5.8 }
496 @end lilypond
497
498 @end multitable
499
500 @node Predefined string tunings
501 @appendixsec Predefined string tunings
502
503 The chart below shows the predefined string tunings.
504
505 @lilypondfile{display-predefined-string-tunings.ly}
506
507 @node Predefined fretboard diagrams
508 @appendixsec Predefined fretboard diagrams
509
510 @menu
511 * Diagrams for Guitar::
512 * Diagrams for Ukulele::
513 * Diagrams for Mandolin::
514 @end menu
515
516 @node Diagrams for Guitar
517 @unnumberedsubsec Diagrams for Guitar
518
519 @lilypondfile[line-width=15.5\cm]{display-predefined-fretboards.ly}
520
521 @node Diagrams for Ukulele
522 @unnumberedsubsec Diagrams for Ukulele
523
524 @lilypondfile[line-width=15.5\cm]{display-predefined-ukulele-fretboards.ly}
525
526 @node Diagrams for Mandolin
527 @unnumberedsubsec Diagrams for Mandolin
528
529 @lilypondfile[line-width=15.5\cm]{display-predefined-mandolin-fretboards.ly}
530
531
532 @node Predefined paper sizes
533 @appendixsec Predefined paper sizes
534
535 Paper sizes are defined in @file{scm/paper.scm}
536
537 @noindent
538 @strong{The @qq{ISO 216} A Series}
539 @table @code
540 @item "a10"
541 (26 x 37 mm)
542 @item "a9"
543 (37 x 52 mm)
544 @item "a8"
545 (52 x 74 mm)
546 @item "a7"
547 (74 x 105 mm)
548 @item "a6"
549 (105 x 148 mm)
550 @item "a5"
551 (148 x 210 mm)
552 @item "a4"
553 (210 x 297 mm)
554 @item "a3"
555 (297 x 420 mm)
556 @item "a2"
557 (420 x 594 mm)
558 @item "a1"
559 (594 x 841 mm)
560 @item "a0"
561 (841 x 1189 mm)
562 @end table
563
564 @noindent
565 @strong{The @qq{ISO 216} B Series}
566 @table @code
567 @item "b10"
568 (31 x 44 mm)
569 @item "b9"
570 (44 x 62 mm)
571 @item "b8"
572 (62 x 88 mm)
573 @item "b7"
574 (88 x 125 mm)
575 @item "b6"
576 (125 x 176 mm)
577 @item "b5"
578 (176 x 250 mm)
579 @item "b4"
580 (250 x 353 mm)
581 @item "b3"
582 (353 x 500 mm)
583 @item "b2"
584 (500 x 707 mm)
585 @item "b1"
586 (707 x 1000 mm)
587 @item "b0"
588 (1000 x 1414 mm)
589 @end table
590
591 @noindent
592 @strong{Two extended sizes as defined in @qq{DIN 476}}
593 @table @code
594 @item "4a0"
595 (1682 x 2378 mm)
596 @item "2a0"
597 (1189 x 1682 mm)
598 @end table
599
600 @noindent
601 @strong{@qq{ISO 269} standard C series}
602 @table @code
603 @item "c10"
604 (28 x 40 mm)
605 @item "c9"
606 (40 x 57 mm)
607 @item "c8"
608 (57 x 81 mm)
609 @item "c7"
610 (81 x 114 mm)
611 @item "c6"
612 (114 x 162 mm)
613 @item "c5"
614 (162 x 229 mm)
615 @item "c4"
616 (229 x 324 mm)
617 @item "c3"
618 (324 x 458 mm)
619 @item "c2"
620 (458 x 648 mm)
621 @item "c1"
622 (648 x 917 mm)
623 @item "c0"
624 (917 x 1297 mm)
625 @end table
626
627 @noindent
628 @strong{North American paper sizes}
629 @table @code
630 @item "junior-legal"
631 (8.0 x 5.0 in)
632 @item "legal"
633 (8.5 x 14.0 in)
634 @item "ledger"
635 (17.0 x 11.0 in)
636 @item "letter"
637 (8.5 x 11.0 in)
638 @item "tabloid"
639 (11.0 x 17.0 in)
640 @item "11x17"
641 (11.0 x 17.0 in)
642 @item "17x11"
643 (17.0 x 11.0 in)
644 @end table
645
646 @noindent
647 @strong{Government-letter by IEEE Printer Working Group, for children's
648 writing}
649 @table @code
650 @item "government-letter"
651 (8 x 10.5 in)
652 @item "government-legal"
653 (8.5 x 13.0 in)
654 @item "philippine-legal"
655 (8.5 x 13.0 in)
656 @end table
657
658 @noindent
659 @strong{ANSI sizes}
660 @table @code
661 @item "ansi a"
662 (8.5 x 11.0 in)
663 @item "ansi b"
664 (17.0 x 11.0 in)
665 @item "ansi c"
666 (17.0 x 22.0 in)
667 @item "ansi d"
668 (22.0 x 34.0 in)
669 @item "ansi e"
670 (34.0 x 44.0 in)
671 @item "engineering f"
672 (28.0 x 40.0 in)
673 @end table
674
675 @noindent
676 @strong{North American Architectural sizes}
677 @table @code
678 @item "arch a"
679 (9.0 x 12.0 in)
680 @item "arch b"
681 (12.0 x 18.0 in)
682 @item "arch c"
683 (18.0 x 24.0 in)
684 @item "arch d"
685 (24.0 x 36.0 in)
686 @item "arch e"
687 (36.0 x 48.0 in)
688 @item "arch e1"
689 (30.0 x 42.0 in)
690 @end table
691
692 @noindent
693 @strong{Antique sizes still used in the United Kingdom}
694 @table @code
695 @item "statement"
696 (5.5 x 8.5 in)
697 @item "half letter"
698 (5.5 x 8.5 in)
699 @item "quarto"
700 (8.0 x 10.0 in)
701 @item "octavo"
702 (6.75 x 10.5 in)
703 @item "executive"
704 (7.25 x 10.5 in)
705 @item "monarch"
706 (7.25 x 10.5 in)
707 @item "foolscap"
708 (8.27 x 13.0 in)
709 @item "folio"
710 (8.27 x 13.0 in)
711 @item "super-b"
712 (13.0 x 19.0 in)
713 @item "post"
714 (15.5 x 19.5 in)
715 @item "crown"
716 (15.0 x 20.0 in)
717 @item "large post"
718 (16.5 x 21.0 in)
719 @item "demy"
720 (17.5 x 22.5 in)
721 @item "medium"
722 (18.0 x 23.0 in)
723 @item "broadsheet"
724 (18.0 x 24.0 in)
725 @item "royal"
726 (20.0 x 25.0 in)
727 @item "elephant"
728 (23.0 x 28.0 in)
729 @item "double demy"
730 (22.5 x 35.0 in)
731 @item "quad demy"
732 (35.0 x 45.0 in)
733 @item "atlas"
734 (26.0 x 34.0 in)
735 @item "imperial"
736 (22.0 x 30.0 in)
737 @item "antiquarian"
738 (31.0 x 53.0 in)
739 @end table
740
741 @noindent
742 @strong{PA4 based sizes}
743 @table @code
744 @item "pa0"
745 (840 x 1120 mm)
746 @item "pa1"
747 (560 x 840 mm)
748 @item "pa2"
749 (420 x 560 mm)
750 @item "pa3"
751 (280 x 420 mm)
752 @item "pa4"
753 (210 x 280 mm)
754 @item "pa5"
755 (140 x 210 mm)
756 @item "pa6"
757 (105 x 140 mm)
758 @item "pa7"
759 (70 x 105 mm)
760 @item "pa8"
761 (52 x 70 mm)
762 @item "pa9"
763 (35 x 52 mm)
764 @item "pa10"
765 (26 x 35 mm)
766 @end table
767
768 @noindent
769 @strong{Used in Southeast Asia and Australia}
770 @table @code
771 @item "f4"
772 (210 x 330 mm)
773 @end table
774
775 @noindent
776 @strong{Used for very small @code{@@lilypond} examples in the
777 documentation based on a8 landscape.}
778 @table @code
779 @item "a8landscape"
780 (74 x 52 mm)
781 @end table
782
783
784 @node MIDI instruments
785 @appendixsec MIDI instruments
786
787 The following is a list of names that can be used for the
788 @code{midiInstrument} property.  The order of the instruments
789 below, starting in the left-hand column moving down, corresponds
790 to the General MIDI Standard's 128 Program Numbers.
791
792 @example
793 acoustic grand            contrabass           lead 7 (fifths)
794 bright acoustic           tremolo strings      lead 8 (bass+lead)
795 electric grand            pizzicato strings    pad 1 (new age)
796 honky-tonk                orchestral harp      pad 2 (warm)
797 electric piano 1          timpani              pad 3 (polysynth)
798 electric piano 2          string ensemble 1    pad 4 (choir)
799 harpsichord               string ensemble 2    pad 5 (bowed)
800 clav                      synthstrings 1       pad 6 (metallic)
801 celesta                   synthstrings 2       pad 7 (halo)
802 glockenspiel              choir aahs           pad 8 (sweep)
803 music box                 voice oohs           fx 1 (rain)
804 vibraphone                synth voice          fx 2 (soundtrack)
805 marimba                   orchestra hit        fx 3 (crystal)
806 xylophone                 trumpet              fx 4 (atmosphere)
807 tubular bells             trombone             fx 5 (brightness)
808 dulcimer                  tuba                 fx 6 (goblins)
809 drawbar organ             muted trumpet        fx 7 (echoes)
810 percussive organ          french horn          fx 8 (sci-fi)
811 rock organ                brass section        sitar
812 church organ              synthbrass 1         banjo
813 reed organ                synthbrass 2         shamisen
814 accordion                 soprano sax          koto
815 harmonica                 alto sax             kalimba
816 concertina                tenor sax            bagpipe
817 acoustic guitar (nylon)   baritone sax         fiddle
818 acoustic guitar (steel)   oboe                 shanai
819 electric guitar (jazz)    english horn         tinkle bell
820 electric guitar (clean)   bassoon              agogo
821 electric guitar (muted)   clarinet             steel drums
822 overdriven guitar         piccolo              woodblock
823 distorted guitar          flute                taiko drum
824 guitar harmonics          recorder             melodic tom
825 acoustic bass             pan flute            synth drum
826 electric bass (finger)    blown bottle         reverse cymbal
827 electric bass (pick)      shakuhachi           guitar fret noise
828 fretless bass             whistle              breath noise
829 slap bass 1               ocarina              seashore
830 slap bass 2               lead 1 (square)      bird tweet
831 synth bass 1              lead 2 (sawtooth)    telephone ring
832 synth bass 2              lead 3 (calliope)    helicopter
833 violin                    lead 4 (chiff)       applause
834 viola                     lead 5 (charang)     gunshot
835 cello                     lead 6 (voice)
836 @end example
837
838
839 @node List of colors
840 @appendixsec List of colors
841
842 @subsubheading Normal colors
843
844 Usage syntax is detailed in @ref{Coloring objects}.
845
846 @cindex List of colors
847 @cindex Colors, list of
848
849 @verbatim
850 black       white          red         green
851 blue        cyan           magenta     yellow
852 grey        darkred        darkgreen   darkblue
853 darkcyan    darkmagenta    darkyellow
854 @end verbatim
855
856
857 @subsubheading X color names
858
859 X color names come several variants:
860
861 Any name that is spelled as a single word with capitalization
862 (e.g., @q{LightSlateBlue}) can also be spelled as space separated
863 words without capitalization (e.g., @q{light slate blue}).
864
865 The word @q{grey} can always be spelled @q{gray} (e.g., @q{DarkSlateGray}).
866
867 Some names can take a numerical suffix (e.g., @q{LightSalmon4}).
868
869
870 @subsubheading Color Names without a numerical suffix:
871
872 @verbatim
873 snow            GhostWhite      WhiteSmoke      gainsboro       FloralWhite
874 OldLace         linen           AntiqueWhite    PapayaWhip      BlanchedAlmond
875 bisque          PeachPuff       NavajoWhite     moccasin        cornsilk
876 ivory           LemonChiffon    seashell        honeydew        MintCream
877 azure           AliceBlue       lavender        LavenderBlush   MistyRose
878 white           black           DarkSlateGrey   DimGrey         SlateGrey
879 LightSlateGrey  grey            LightGrey       MidnightBlue    navy
880 NavyBlue        CornflowerBlue  DarkSlateBlue   SlateBlue       MediumSlateBlue
881 LightSlateBlue  MediumBlue      RoyalBlue       blue            DodgerBlue
882 DeepSkyBlue     SkyBlue         LightSkyBlue    SteelBlue       LightSteelBlue
883 LightBlue       PowderBlue      PaleTurquoise   DarkTurquoise   MediumTurquoise
884 turquoise       cyan            LightCyan       CadetBlue       MediumAquamarine
885 aquamarine      DarkGreen       DarkOliveGreen  DarkSeaGreen    SeaGreen
886 MediumSeaGreen  LightSeaGreen   PaleGreen       SpringGreen     LawnGreen
887 green           chartreuse      MediumSpringGreen       GreenYellow     LimeGreen
888 YellowGreen     ForestGreen     OliveDrab       DarkKhaki       khaki
889 PaleGoldenrod   LightGoldenrodYellow    LightYellow     yellow  gold
890 LightGoldenrod  goldenrod       DarkGoldenrod   RosyBrown       IndianRed
891 SaddleBrown     sienna          peru            burlywood       beige
892 wheat           SandyBrown      tan             chocolate       firebrick
893 brown           DarkSalmon      salmon          LightSalmon     orange
894 DarkOrange      coral           LightCoral      tomato          OrangeRed
895 red             HotPink         DeepPink        pink            LightPink
896 PaleVioletRed   maroon          MediumVioletRed VioletRed       magenta
897 violet          plum            orchid          MediumOrchid    DarkOrchid
898 DarkViolet      BlueViolet      purple          MediumPurple    thistle
899 DarkGrey        DarkBlue        DarkCyan        DarkMagenta     DarkRed
900 LightGreen
901 @end verbatim
902
903
904 @subsubheading Color names with a numerical suffix
905
906 In the following names the suffix N can be a number in the range 1-4:
907
908 @verbatim
909 snowN           seashellN       AntiqueWhiteN   bisqueN         PeachPuffN
910 NavajoWhiteN    LemonChiffonN   cornsilkN       ivoryN          honeydewN
911 LavenderBlushN  MistyRoseN      azureN          SlateBlueN      RoyalBlueN
912 blueN           DodgerBlueN     SteelBlueN      DeepSkyBlueN    SkyBlueN
913 LightSkyBlueN   LightSteelBlueN LightBlueN      LightCyanN      PaleTurquoiseN
914 CadetBlueN      turquoiseN      cyanN           aquamarineN     DarkSeaGreenN
915 SeaGreenN       PaleGreenN      SpringGreenN    greenN          chartreuseN
916 OliveDrabN      DarkOliveGreenN khakiN          LightGoldenrodN LightYellowN
917 yellowN         goldN           goldenrodN      DarkGoldenrodN  RosyBrownN
918 IndianRedN      siennaN         burlywoodN      wheatN          tanN
919 chocolateN      firebrickN      brownN          salmonN         LightSalmonN
920 orangeN         DarkOrangeN     coralN          tomatoN         OrangeRedN
921 redN            DeepPinkN       HotPinkN        pinkN           LightPinkN
922 PaleVioletRedN  maroonN         VioletRedN      magentaN        orchidN
923 plumN           MediumOrchidN   DarkOrchidN     purpleN         MediumPurpleN
924 thistleN
925 @end verbatim
926
927
928 @subsubheading Grey Scale
929
930 A grey scale can be obtained using:
931
932 @example
933 greyN
934 @end example
935
936 @noindent
937 Where N is in the range 0-100.
938
939
940 @node The Feta font
941 @appendixsec The Feta font
942
943 @cindex Feta font
944 @cindex Font, Feta
945
946 The following symbols are available in the Emmentaler font and may be
947 accessed directly using text markup with the name of the glyph
948 as shown in the tables below,
949 such as @code{g^\markup @{\musicglyph #"scripts.segno" @}} or
950 @code{\markup @{\musicglyph #"five"@}}.  For more information,
951 see @ref{Formatting text}.
952
953
954 @menu
955 * Clef glyphs::
956 * Time Signature glyphs::
957 * Number glyphs::
958 * Accidental glyphs::
959 * Default Notehead glyphs::
960 * Special Notehead glyphs::
961 * Shape-note Notehead glyphs::
962 * Rest glyphs::
963 * Flag glyphs::
964 * Dot glyphs::
965 * Dynamic glyphs::
966 * Script glyphs::
967 * Arrowhead glyphs::
968 * Bracket-tip glyphs::
969 * Pedal glyphs::
970 * Accordion glyphs::
971 * Tie glyphs::
972 * Vaticana glyphs::
973 * Medicaea glyphs::
974 * Hufnagel glyphs::
975 * Mensural glyphs::
976 * Neomensural glyphs::
977 * Petrucci glyphs::
978 * Solesmes glyphs::
979 * Kievan Notation glyphs::
980 @end menu
981
982
983 @node Clef glyphs
984 @unnumberedsubsec Clef glyphs
985
986 @lilypond[quote]
987 \include "font-table.ly"
988 \markuplist \override-lines #'(word-space . 4)
989             \doc-chars #clefs
990 @end lilypond
991
992
993 @node Time Signature glyphs
994 @unnumberedsubsec Time Signature glyphs
995
996 @lilypond[quote]
997 \include "font-table.ly"
998 \markuplist \override-lines #'(word-space . 4)
999             \doc-chars #timesig
1000 @end lilypond
1001
1002
1003 @node Number glyphs
1004 @unnumberedsubsec Number glyphs
1005
1006 @lilypond[quote]
1007 \include "font-table.ly"
1008 \markuplist \override-lines #'(word-space . 4)
1009             \doc-chars #numbers
1010 @end lilypond
1011
1012
1013 @node Accidental glyphs
1014 @unnumberedsubsec Accidental glyphs
1015
1016 @lilypond[quote]
1017 \include "font-table.ly"
1018 \markuplist \override-lines #'(word-space . 4)
1019             \doc-chars #accidentals
1020 @end lilypond
1021
1022
1023 @node Default Notehead glyphs
1024 @unnumberedsubsec Default Notehead glyphs
1025
1026 @lilypond[quote]
1027 \include "font-table.ly"
1028 \markuplist \override-lines #'(word-space . 4)
1029             \doc-chars #default-noteheads
1030 @end lilypond
1031
1032
1033 @node Special Notehead glyphs
1034 @unnumberedsubsec Special Notehead glyphs
1035
1036 @lilypond[quote]
1037 \include "font-table.ly"
1038 \markuplist \override-lines #'(word-space . 4)
1039             \doc-chars #special-noteheads
1040 @end lilypond
1041
1042
1043 @node Shape-note Notehead glyphs
1044 @unnumberedsubsec Shape-note Notehead glyphs
1045
1046 @lilypond[quote]
1047 \include "font-table.ly"
1048 \markuplist \override-lines #'(word-space . 4)
1049             \doc-chars #shape-note-noteheads
1050 @end lilypond
1051
1052
1053 @node Rest glyphs
1054 @unnumberedsubsec Rest glyphs
1055
1056 @lilypond[quote]
1057 \include "font-table.ly"
1058 \markuplist \override-lines #'(word-space . 4)
1059             \doc-chars #rests
1060 @end lilypond
1061
1062
1063 @node Flag glyphs
1064 @unnumberedsubsec Flag glyphs
1065
1066 @lilypond[quote]
1067 \include "font-table.ly"
1068 \markuplist \override-lines #'(word-space . 4)
1069             \doc-chars #flags
1070 @end lilypond
1071
1072
1073 @node Dot glyphs
1074 @unnumberedsubsec Dot glyphs
1075
1076 @lilypond[quote]
1077 \include "font-table.ly"
1078 \markuplist \override-lines #'(word-space . 4)
1079             \doc-chars #dots
1080 @end lilypond
1081
1082
1083 @node Dynamic glyphs
1084 @unnumberedsubsec Dynamic glyphs
1085
1086 @lilypond[quote]
1087 \include "font-table.ly"
1088 \markuplist \override-lines #'(word-space . 4)
1089             \doc-chars #dynamics
1090 @end lilypond
1091
1092
1093 @node Script glyphs
1094 @unnumberedsubsec Script glyphs
1095
1096 @lilypond[quote]
1097 \include "font-table.ly"
1098 \markuplist \override-lines #'(word-space . 4)
1099             \doc-chars #scripts
1100 @end lilypond
1101
1102
1103 @node Arrowhead glyphs
1104 @unnumberedsubsec Arrowhead glyphs
1105
1106 @lilypond[quote]
1107 \include "font-table.ly"
1108 \markuplist \override-lines #'(word-space . 4)
1109             \doc-chars #arrowheads
1110 @end lilypond
1111
1112
1113 @node Bracket-tip glyphs
1114 @unnumberedsubsec Bracket-tip glyphs
1115
1116 @lilypond[quote]
1117 \include "font-table.ly"
1118 \markuplist \override-lines #'(word-space . 4)
1119             \doc-chars #brackettips
1120 @end lilypond
1121
1122
1123 @node Pedal glyphs
1124 @unnumberedsubsec Pedal glyphs
1125
1126 @lilypond[quote]
1127 \include "font-table.ly"
1128 \markuplist \override-lines #'(word-space . 4)
1129             \doc-chars #pedal
1130 @end lilypond
1131
1132
1133 @node Accordion glyphs
1134 @unnumberedsubsec Accordion glyphs
1135
1136 @lilypond[quote]
1137 \include "font-table.ly"
1138 \markuplist \override-lines #'(word-space . 4)
1139             \doc-chars #accordion
1140 @end lilypond
1141
1142
1143 @node Tie glyphs
1144 @unnumberedsubsec Tie glyphs
1145
1146 @lilypond[quote]
1147 \include "font-table.ly"
1148 \markuplist \override-lines #'(word-space . 4)
1149             \doc-chars #ties
1150 @end lilypond
1151
1152
1153 @node Vaticana glyphs
1154 @unnumberedsubsec Vaticana glyphs
1155
1156 @lilypond[quote]
1157 \include "font-table.ly"
1158 \markuplist \override-lines #'(word-space . 4)
1159             \doc-chars #vaticana
1160 @end lilypond
1161
1162
1163 @node Medicaea glyphs
1164 @unnumberedsubsec Medicaea glyphs
1165
1166 @lilypond[quote]
1167 \include "font-table.ly"
1168 \markuplist \override-lines #'(word-space . 4)
1169             \doc-chars #medicaea
1170 @end lilypond
1171
1172
1173 @node Hufnagel glyphs
1174 @unnumberedsubsec Hufnagel glyphs
1175
1176 @lilypond[quote]
1177 \include "font-table.ly"
1178 \markuplist \override-lines #'(word-space . 4)
1179             \doc-chars #hufnagel
1180 @end lilypond
1181
1182
1183 @node Mensural glyphs
1184 @unnumberedsubsec Mensural glyphs
1185
1186 @lilypond[quote]
1187 \include "font-table.ly"
1188 \markuplist \override-lines #'(word-space . 4)
1189             \doc-chars #mensural
1190 @end lilypond
1191
1192
1193 @node Neomensural glyphs
1194 @unnumberedsubsec Neomensural glyphs
1195
1196 @lilypond[quote]
1197 \include "font-table.ly"
1198 \markuplist \override-lines #'(word-space . 4)
1199             \doc-chars #neomensural
1200 @end lilypond
1201
1202
1203 @node Petrucci glyphs
1204 @unnumberedsubsec Petrucci glyphs
1205
1206 @lilypond[quote]
1207 \include "font-table.ly"
1208 \markuplist \override-lines #'(word-space . 4)
1209             \doc-chars #petrucci
1210 @end lilypond
1211
1212
1213 @node Solesmes glyphs
1214 @unnumberedsubsec Solesmes glyphs
1215
1216 @lilypond[quote]
1217 \include "font-table.ly"
1218 \markuplist \override-lines #'(word-space . 4)
1219             \doc-chars #solesmes
1220 @end lilypond
1221
1222 @node Kievan Notation glyphs
1223 @unnumberedsubsec Kievan Notation glyphs
1224
1225 @lilypond[quote]
1226 \include "font-table.ly"
1227 \markuplist \override-lines #'(word-space . 4)
1228              \doc-chars #kievan
1229 @end lilypond
1230
1231
1232 @node Note head styles
1233 @appendixsec Note head styles
1234
1235 @cindex note head styles
1236 The following styles may be used for note heads.
1237
1238 @lilypondfile[noindent]{note-head-style.ly}
1239
1240
1241 @node Clef styles
1242 @appendixsec Clef styles
1243
1244 The following table shows all the different clef styles possible
1245 (including where @emph{middle C} sits relative to the clef).
1246
1247 @multitable @columnfractions .30 .2 .30 .2
1248
1249 @headitem
1250 Example
1251 @tab
1252 Output
1253 @tab
1254 Example
1255 @tab
1256 Output
1257
1258
1259 @item
1260 @code{\clef G}
1261 @tab
1262 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1263 \clef G c1
1264 @end lilypond
1265
1266 @tab
1267 @code{\clef "G2"}
1268 @tab
1269 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1270 \clef "G2"
1271 c1
1272 @end lilypond
1273
1274 @item
1275 @code{\clef treble}
1276 @tab
1277 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1278 \clef treble
1279 c1
1280 @end lilypond
1281
1282 @tab
1283 @code{\clef violin}
1284 @tab
1285 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1286 \clef violin
1287 c1
1288 @end lilypond
1289
1290 @item
1291 @code{\clef french}
1292 @tab
1293 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1294 \clef french
1295 c1
1296 @end lilypond
1297
1298 @tab
1299 @code{\clef GG}
1300 @tab
1301 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1302 \clef GG
1303 c1
1304 @end lilypond
1305
1306 @item
1307 @code{\clef tenorG}
1308 @tab
1309 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1310 \clef tenorG
1311 c1
1312 @end lilypond
1313
1314 @tab
1315 @code{\clef soprano}
1316 @tab
1317 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1318 \clef soprano
1319 c1
1320 @end lilypond
1321
1322 @item
1323 @code{\clef mezzosoprano}
1324 @tab
1325 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1326 \clef mezzosoprano
1327 c1
1328 @end lilypond
1329
1330 @tab
1331 @code{\clef C}
1332 @tab
1333 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1334 \clef C
1335 c1
1336 @end lilypond
1337
1338 @item
1339 @code{\clef alto}
1340 @tab
1341 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1342 \clef alto
1343 c1
1344 @end lilypond
1345
1346 @tab
1347 @code{\clef tenor}
1348 @tab
1349 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1350 \clef tenor
1351 c1
1352 @end lilypond
1353
1354 @item
1355 @code{\clef baritone}
1356 @tab
1357 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1358 \clef baritone
1359 c1
1360 @end lilypond
1361
1362 @tab
1363 @code{\clef varC}
1364 @tab
1365 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1366 \clef varC
1367 c1
1368 @end lilypond
1369
1370 @item
1371 @code{\clef altovarC}
1372 @tab
1373 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1374 \clef altovarC
1375 c1
1376 @end lilypond
1377
1378 @tab
1379 @code{\clef tenorvarC}
1380 @tab
1381 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1382 \clef tenorvarC
1383 c1
1384 @end lilypond
1385
1386 @item
1387 @code{\clef baritonevarC}
1388 @tab
1389 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1390 \clef baritonevarC
1391 c1
1392 @end lilypond
1393
1394 @tab
1395 @code{\clef varbaritone}
1396 @tab
1397 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1398 \clef varbaritone
1399 c1
1400 @end lilypond
1401
1402 @item
1403 @code{\clef baritonevarF}
1404 @tab
1405 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1406 \clef baritonevarF
1407 c1
1408 @end lilypond
1409
1410 @tab
1411 @code{\clef F}
1412 @tab
1413 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1414 \clef F
1415 c1
1416 @end lilypond
1417
1418 @item
1419 @code{\clef bass}
1420 @tab
1421 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1422 \clef bass
1423 c1
1424 @end lilypond
1425
1426 @tab
1427 @code{\clef subbass}
1428 @tab
1429 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1430 \clef subbass
1431 c1
1432 @end lilypond
1433
1434 @item
1435 @code{\clef percussion}
1436 @tab
1437 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1438 \clef percussion
1439 c1
1440 @end lilypond
1441
1442 @tab
1443 @c @example does not work as expected within multitables
1444 @code{
1445 \new TabStaff @{ @*
1446 @ @ \clef tab @*
1447 @}
1448 }
1449 @tab
1450 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1451 \new TabStaff {
1452   \clef tab
1453   c1
1454 }
1455 @end lilypond
1456
1457 @item
1458 @c @example does not work as expected within multitables
1459 @code{
1460 \new TabStaff @{ @*
1461 @ @ \clef moderntab @*
1462 @}
1463 }
1464 @tab
1465 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1466 \new TabStaff {
1467   \clef moderntab
1468   c1
1469 }
1470 @end lilypond
1471
1472
1473 @end multitable
1474
1475
1476 @node Text markup commands
1477 @appendixsec Text markup commands
1478
1479 @include markup-commands.tely
1480
1481
1482 @node Text markup list commands
1483 @appendixsec Text markup list commands
1484
1485 The following commands can all be used with @code{\markuplist}:
1486
1487 @include markup-list-commands.tely
1488
1489
1490 @node List of special characters
1491 @appendixsec List of special characters
1492
1493 The following special characters references can be used;
1494 for more details, see @ref{ASCII aliases}.
1495
1496 The HTML syntax is used and most of these references are the same as HTML.
1497 The rest of them are inspired by @LaTeX{}.
1498
1499 The characters are boxed so that you can see their size.
1500 A small padding has been added between the character and the box
1501 for more readability.
1502
1503 @lilypond[quote]
1504 \include "special-characters.ly"
1505 @end lilypond
1506
1507
1508 @node List of articulations
1509 @appendixsec List of articulations
1510
1511
1512 The following lists show all the scripts in the Feta font that may be
1513 attached to notes (eg. @samp{f\accent} or @samp{f->}).  Each example
1514 shows the script in the @emph{up}, @emph{down} and @emph{neutral}
1515 positions respectively.
1516
1517 @c Articulations and ornamentations
1518 @c Fingering instructions (for "thumb")
1519 @c Common notation for unfretted strings
1520 @c   Bowing indications
1521 @c   Harmonics
1522 @c   Snap (Bartók) pizzicato
1523 @c Custom percussion staves (for "halfopen" -- not yet funindexed)
1524 @c References for wind instruments (for "open"/"stopped" -- not yet funindexed)
1525
1526
1527 @menu
1528 * Articulation scripts::
1529 * Ornament scripts::
1530 * Fermata scripts::
1531 * Instrument-specific scripts::
1532 * Repeat sign scripts::
1533 * Ancient scripts::
1534 @end menu
1535
1536 @ignore
1537 The @multitable @columnfraction value discrepancy between the first and
1538 the remaining columns is deliberate; it seems (at least visually
1539 anyway) the gap (after building the documentation) between first and
1540 second column examples was always larger than between the remaining
1541 columns - JL
1542 @end ignore
1543
1544 @cindex accent
1545 @cindex espressivo
1546 @cindex marcato
1547 @cindex portato
1548 @cindex staccatissimo
1549 @cindex staccato
1550 @cindex tenuto
1551 @cindex thumb
1552
1553 @node Articulation scripts
1554 @unnumberedsubsec Articulation scripts
1555
1556 @multitable @columnfractions .22 .25 .25 .25
1557
1558 @item
1559 @code{\accent} or @code{->}
1560 @lilypond[notime,relative=2]
1561 f^\accent e,_\accent b'\accent
1562 @end lilypond
1563 @tab
1564 @code{\espressivo}
1565 @lilypond[notime,relative=2]
1566 f^\espressivo e,_\espressivo b'\espressivo
1567 @end lilypond
1568 @tab
1569 @code{\marcato} or @code{-^}
1570 @lilypond[notime,relative=2]
1571 f^\marcato e,_\marcato b'\marcato
1572 @end lilypond
1573 @tab
1574 @code{\portato} or @code{-_}
1575 @lilypond[notime,relative=2]
1576 f^\portato e,_\portato b'\portato
1577 @end lilypond
1578
1579 @item
1580 @code{\staccatissimo} @* or @code{-!}
1581 @lilypond[notime,relative=2]
1582 f^\staccatissimo e,_\staccatissimo b'\staccatissimo
1583 @end lilypond
1584 @tab
1585 @code{\staccato} or @code{-.}
1586 @lilypond[notime,relative=2]
1587 f^\staccato e,_\staccato b'\staccato
1588 @end lilypond
1589 @tab
1590 @code{\tenuto} or @code{--}
1591 @lilypond[notime,relative=2]
1592 f^\tenuto e,_\tenuto b'\tenuto
1593 @end lilypond
1594
1595 @end multitable
1596
1597 @cindex prall
1598 @cindex prallup
1599 @cindex pralldown
1600 @cindex upprall
1601 @cindex downprall
1602 @cindex prallprall
1603 @cindex lineprall
1604 @cindex prallmordent
1605 @cindex mordent
1606 @cindex upmordent
1607 @cindex downmordent
1608 @cindex trill
1609 @cindex turn
1610 @cindex reverseturn
1611
1612 @node Ornament scripts
1613 @unnumberedsubsec Ornament scripts
1614
1615 @multitable @columnfractions .22 .25 .25 .25
1616
1617 @item
1618 @code{\prall}
1619 @lilypond[notime,relative=2]
1620 f^\prall e,_\prall b'\prall
1621 @end lilypond
1622 @tab
1623 @code{\prallup}
1624 @lilypond[notime,relative=2]
1625 f^\prallup e,_\prallup b'\prallup
1626 @end lilypond
1627 @tab
1628 @code{\pralldown}
1629 @lilypond[notime,relative=2]
1630 f^\pralldown e,_\pralldown b'\pralldown
1631 @end lilypond
1632 @tab
1633 @code{\upprall}
1634 @lilypond[notime,relative=2]
1635 f^\upprall e,_\upprall b'\upprall
1636 @end lilypond
1637
1638 @item
1639 @code{\downprall}
1640 @lilypond[notime,relative=2]
1641 f^\downprall e,_\downprall b'\downprall
1642 @end lilypond
1643 @tab
1644 @code{\prallprall}
1645 @lilypond[notime,relative=2]
1646 f^\prallprall e,_\prallprall b'\prallprall
1647 @end lilypond
1648 @tab
1649 @code{\lineprall}
1650 @lilypond[notime,relative=2]
1651 f^\lineprall e,_\lineprall b'\lineprall
1652 @end lilypond
1653 @tab
1654 @code{\prallmordent}
1655 @lilypond[notime,relative=2]
1656 f^\prallmordent e,_\prallmordent b'\prallmordent
1657 @end lilypond
1658
1659 @item
1660 @code{\mordent}
1661 @lilypond[notime,relative=2]
1662 f^\mordent e,_\mordent b'\mordent
1663 @end lilypond
1664 @tab
1665 @code{\upmordent}
1666 @lilypond[notime,relative=2]
1667 f^\upmordent e,_\upmordent b'\upmordent
1668 @end lilypond
1669 @tab
1670 @code{\downmordent}
1671 @lilypond[notime,relative=2]
1672 f^\downmordent e,_\downmordent b'\downmordent
1673 @end lilypond
1674 @tab
1675 @code{\trill}
1676 @lilypond[notime,relative=2]
1677 f^\trill e,_\trill b'\trill
1678 @end lilypond
1679
1680 @item
1681 @code{\turn}
1682 @lilypond[notime,relative=2]
1683 f^\turn e,_\turn b'\reverseturn
1684 @end lilypond
1685 @tab
1686 @code{\reverseturn}
1687 @lilypond[notime,relative=2]
1688 f^\reverseturn e,_\reverseturn b'\reverseturn
1689 @end lilypond
1690
1691 @end multitable
1692
1693 @cindex fermata
1694 @cindex shortfermata
1695 @cindex longfermata
1696 @cindex verylongfermata
1697
1698 @node Fermata scripts
1699 @unnumberedsubsec Fermata scripts
1700
1701 @multitable @columnfractions .22 .25 .25 .25
1702
1703 @item
1704 @code{\shortfermata}
1705 @lilypond[notime,relative=2]
1706 f^\shortfermata e,_\shortfermata b'\shortfermata
1707 @end lilypond
1708 @tab
1709 @code{\fermata}
1710 @lilypond[notime,relative=2]
1711 f^\fermata e,_\fermata b'\fermata
1712 @end lilypond
1713 @tab
1714 @code{\longfermata}
1715 @lilypond[notime,relative=2]
1716 f^\longfermata e,_\longfermata b'\longfermata
1717 @end lilypond
1718 @tab
1719 @code{\verylongfermata}
1720 @lilypond[notime,relative=2]
1721 f^\verylongfermata e,_\verylongfermata b'\verylongfermata
1722 @end lilypond
1723
1724 @end multitable
1725
1726 @cindex upbow
1727 @cindex downbow
1728 @cindex flageolet
1729 @cindex open
1730 @cindex halfopen
1731 @cindex lheel
1732 @cindex rheel
1733 @cindex ltoe
1734 @cindex rtoe
1735 @cindex snappizzicato
1736 @cindex stopped
1737
1738 @node Instrument-specific scripts
1739 @unnumberedsubsec Instrument-specific scripts
1740
1741 @multitable @columnfractions .22 .25 .25 .25
1742
1743 @item
1744 @code{\upbow}
1745 @lilypond[notime,relative=2]
1746 f^\upbow e,_\upbow b'\upbow
1747 @end lilypond
1748 @tab
1749 @code{\downbow}
1750 @lilypond[notime,relative=2]
1751 f^\downbow e,_\downbow b'\downbow
1752 @end lilypond
1753 @tab
1754 @code{\flageolet}
1755 @lilypond[notime,relative=2]
1756 f^\flageolet e,_\flageolet b'\flageolet
1757 @end lilypond
1758 @tab
1759 @code{\open}
1760 @lilypond[notime,relative=2]
1761 f^\open e,_\open b'\open
1762 @end lilypond
1763
1764 @item
1765 @code{\halfopen}
1766 @lilypond[notime,relative=2]
1767 f^\halfopen e,_\halfopen b'\halfopen
1768 @end lilypond
1769 @tab
1770 @code{\lheel}
1771 @lilypond[notime,relative=2]
1772 f^\lheel e,_\lheel b'\lheel
1773 @end lilypond
1774 @tab
1775 @code{\rheel}
1776 @lilypond[notime,relative=2]
1777 f^\rheel e,_\rheel b'\rheel
1778 @end lilypond
1779 @tab
1780 @code{\ltoe}
1781 @lilypond[notime,relative=2]
1782 f^\ltoe e,_\ltoe b'\ltoe
1783 @end lilypond
1784
1785 @item
1786 @code{\rtoe}
1787 @lilypond[notime,relative=2]
1788 f^\rtoe e,_\rtoe b'\rtoe
1789 @end lilypond
1790 @tab
1791 @code{\snappizzicato}
1792 @lilypond[notime,relative=2]
1793 f^\snappizzicato e,_\snappizzicato b'\snappizzicato
1794 @end lilypond
1795 @tab
1796 @code{\stopped} or @code{-+}
1797 @lilypond[notime,relative=2]
1798 f^\stopped e,_\stopped b'\stopped
1799 @end lilypond
1800
1801 @end multitable
1802
1803 @cindex segno
1804 @cindex coda
1805 @cindex varcoda
1806
1807 @node Repeat sign scripts
1808 @unnumberedsubsec Repeat sign scripts
1809
1810 @multitable @columnfractions .22 .25 .25 .25
1811
1812 @item
1813 @code{\segno}
1814 @lilypond[notime,relative=2]
1815 f^\segno e,_\segno b'\segno
1816 @end lilypond
1817 @tab
1818 @code{\coda}
1819 @lilypond[notime,relative=2]
1820 f^\coda e,_\coda b'\coda
1821 @end lilypond
1822 @tab
1823 @code{\varcoda}
1824 @lilypond[notime,relative=2]
1825 f^\varcoda e,_\varcoda b'\varcoda
1826 @end lilypond
1827
1828 @end multitable
1829
1830 @cindex accentus
1831 @cindex circulus
1832 @cindex ictus
1833 @cindex semicirculus
1834 @cindex signumcongruentiae
1835
1836 @node Ancient scripts
1837 @unnumberedsubsec Ancient scripts
1838
1839 @multitable @columnfractions .22 .25 .25 .25
1840
1841 @item
1842 @code{\accentus}
1843 @lilypond[notime]
1844 \include "gregorian.ly"
1845 \new VaticanaStaff { e'^\accentus s4 f_\accentus s4 b\accentus}
1846 @end lilypond
1847 @tab
1848 @code{\circulus}
1849 @lilypond[notime]
1850 \include "gregorian.ly"
1851 \new VaticanaStaff { e'^\circulus s4 f_\circulus s4 b\circulus  }
1852 @end lilypond
1853 @tab
1854 @code{\ictus}
1855 @lilypond[notime]
1856 \include "gregorian.ly"
1857 \new VaticanaStaff { e'^\ictus s4 f_\ictus s4 b\ictus}
1858 @end lilypond
1859
1860 @item
1861 @code{\semicirculus}
1862 @lilypond[notime]
1863 \include "gregorian.ly"
1864 \new VaticanaStaff {
1865   e'^\semicirculus s4 f_\semicirculus s4 b\semicirculus
1866 }
1867 @end lilypond
1868 @tab
1869 @code{\signumcongruentiae}
1870 @lilypond[notime]
1871 \include "gregorian.ly"
1872 \new VaticanaStaff {
1873   e'^\signumcongruentiae s4
1874   f_\signumcongruentiae s4
1875   b\signumcongruentiae
1876 }
1877 @end lilypond
1878
1879 @end multitable
1880
1881 @cindex drums, various
1882 @cindex acoustic bass
1883 @cindex bass
1884 @cindex snare
1885 @cindex electric snare
1886 @cindex acoustic snare
1887 @cindex tom tom
1888 @cindex bongo
1889 @cindex conga
1890 @cindex timbale
1891 @cindex sidestick
1892 @cindex floor tom tom
1893 @cindex low tom tom
1894 @cindex high tom tom
1895 @cindex mid tom tom
1896 @cindex high hat
1897 @cindex pedal high hat
1898 @cindex open high hat
1899 @cindex half-open high hat
1900 @cindex cymbal, various
1901 @cindex crash cymbal
1902 @cindex ride cymbal
1903 @cindex chinese cymbal
1904 @cindex splash cymbal
1905 @cindex ride bell
1906 @cindex cowbell
1907 @cindex agogo
1908 @cindex high bongo
1909 @cindex low bongo
1910 @cindex mute bongo
1911 @cindex open bongo
1912 @cindex high conga
1913 @cindex low conga
1914 @cindex mute conga
1915 @cindex open conga
1916 @cindex high timbale
1917 @cindex low timbale
1918 @cindex mute timbale
1919 @cindex open timbale
1920 @cindex sidestick
1921 @cindex guiro
1922 @cindex cabasa
1923 @cindex maracas
1924 @cindex whistle
1925 @cindex handclap
1926 @cindex tambourine
1927 @cindex vibraslap
1928 @cindex tam tam
1929 @cindex claves
1930 @cindex woodblock
1931 @cindex cuica
1932 @cindex triangle
1933
1934 @node Percussion notes
1935 @appendixsec Percussion notes
1936
1937 @multitable @columnfractions .22 .25 .25 .25
1938
1939 @item
1940 @code{bassdrum @* bd @*}
1941 @lilypond[notime,ragged-right]
1942 \drums { bd4 bd1 }
1943 @end lilypond
1944 @tab
1945 @code{acousticbassdrum @* bda @*}
1946 @lilypond[notime,ragged-right]
1947 \drums { bda4 bda1 }
1948 @end lilypond
1949 @tab
1950 @code{snare @* sn @*}
1951 @lilypond[notime,ragged-right]
1952 \drums { sn4 sn1 }
1953 @end lilypond
1954 @tab
1955 @code{acousticsnare @* sna @*}
1956 @lilypond[notime,ragged-right]
1957 \drums { sna4 sna1 }
1958 @end lilypond
1959
1960 @item
1961 @code{electricsnare @* sne @*}
1962 @lilypond[notime,ragged-right]
1963 \drums { sne4 sne1 }
1964 @end lilypond
1965 @tab
1966 @code{lowfloortom @* tomfl @*}
1967 @lilypond[notime,ragged-right]
1968 \drums { tomfl4 tomfl1 }
1969 @end lilypond
1970 @tab
1971 @code{highfloortom @* tomfh @*}
1972 @lilypond[notime,ragged-right]
1973 \drums { tomfh4 tomfh1 }
1974 @end lilypond
1975 @tab
1976 @code{lowtom @* toml @*}
1977 @lilypond[notime,ragged-right]
1978 \drums { toml4 toml1 }
1979 @end lilypond
1980
1981 @item
1982 @code{hightom @* tomh @*}
1983 @lilypond[notime,ragged-right]
1984 \drums { tomh4 tomh1 }
1985 @end lilypond
1986 @tab
1987 @code{lowmidtom @* tomml @*}
1988 @lilypond[notime,ragged-right]
1989 \drums { tomml4 tomml1 }
1990 @end lilypond
1991 @tab
1992 @code{highmidtom @* tommh @*}
1993 @lilypond[notime,ragged-right]
1994 \drums { tommh4 tommh1 }
1995 @end lilypond
1996 @tab
1997 @code{highhat @* hh @*}
1998 @lilypond[notime,ragged-right]
1999 \drums { hh4 hh1 }
2000 @end lilypond
2001
2002 @item
2003 @code{closedhihat @* hhc @*}
2004 @lilypond[notime,ragged-right]
2005 \drums { hhc4 hhc1 }
2006 @end lilypond
2007 @tab
2008 @code{openhighhat @* hho @*}
2009 @lilypond[notime,ragged-right]
2010 \drums { hho4 hho1 }
2011 @end lilypond
2012 @tab
2013 @code{halfopenhihat @* hhho @*}
2014 @lilypond[notime,ragged-right]
2015 \drums { hhho4 hhho1 }
2016 @end lilypond
2017 @tab
2018 @code{pedalhihat @* hhp @*}
2019 @lilypond[notime,ragged-right]
2020 \drums { hhp4 hhp1 }
2021 @end lilypond
2022
2023
2024 @item
2025 @code{crashcymbal @* cymc @*}
2026 @lilypond[notime,ragged-right]
2027 \drums { cymc4 cymc1 }
2028 @end lilypond
2029 @tab
2030 @code{crashcymbala @* cymca @*}
2031 @lilypond[notime,ragged-right]
2032 \drums { cymca4 cymca1 }
2033 @end lilypond
2034 @tab
2035 @code{crashcymbalb @* cymcb @*}
2036 @lilypond[notime,ragged-right]
2037 \drums { cymcb4 cymcb1 }
2038 @end lilypond
2039 @tab
2040 @code{ridecymbal @* cymr @*}
2041 @lilypond[notime,ragged-right]
2042 \drums { cymr4 cymr1 }
2043 @end lilypond
2044
2045 @item
2046 @code{ridecymbala @* cymra @*}
2047 @lilypond[notime,ragged-right]
2048 \drums { cymra4 cymra1 }
2049 @end lilypond
2050 @tab
2051 @code{ridecymbalb @* cymrb @*}
2052 @lilypond[notime,ragged-right]
2053 \drums { cymrb4 cymrb1 }
2054 @end lilypond
2055 @tab
2056 @code{chinesecymbal @* cymch @*}
2057 @lilypond[notime,ragged-right]
2058 \drums { cymch4 cymch1 }
2059 @end lilypond
2060 @tab
2061 @code{splashcymbal @* cyms @*}
2062 @lilypond[notime,ragged-right]
2063 \drums { cyms4 cyms1 }
2064 @end lilypond
2065
2066 @item
2067 @code{ridebell @* rb @*}
2068 @lilypond[notime,ragged-right]
2069 \drums { rb4 rb1 }
2070 @end lilypond
2071 @tab
2072 @code{cowbell @* cb @*}
2073 @lilypond[notime,ragged-right]
2074 \drums { cb4 cb1 }
2075 @end lilypond
2076 @tab
2077 @code{hibongo @* boh @*}
2078 @lilypond[notime,ragged-right]
2079 \drums { boh4 boh1 }
2080 @end lilypond
2081 @tab
2082 @code{openhibongo @* boho @*}
2083 @lilypond[notime,ragged-right]
2084 \drums { boho4 boho1 }
2085 @end lilypond
2086
2087 @item
2088 @code{mutehibongo @* bohm @*}
2089 @lilypond[notime,ragged-right]
2090 \drums { bohm4 bohm1 }
2091 @end lilypond
2092 @tab
2093 @code{lobongo @* bol @*}
2094 @lilypond[notime,ragged-right]
2095 \drums { bol4 bol1 }
2096 @end lilypond
2097 @tab
2098 @code{openlobongo @* bolo @*}
2099 @lilypond[notime,ragged-right]
2100 \drums { bolo4 bolo1 }
2101 @end lilypond
2102 @tab
2103 @code{mutelobongo @* bolm @*}
2104 @lilypond[notime,ragged-right]
2105 \drums { bolm4 bolm1 }
2106 @end lilypond
2107
2108
2109 @item
2110 @code{hiconga @* cgh @*}
2111 @lilypond[notime,ragged-right]
2112 \drums { cgh4 cgh1 }
2113 @end lilypond
2114 @tab
2115 @code{openhiconga @* cgho @*}
2116 @lilypond[notime,ragged-right]
2117 \drums { cgho4 cgho1 }
2118 @end lilypond
2119 @tab
2120 @code{mutehiconga @* cghm @*}
2121 @lilypond[notime,ragged-right]
2122 \drums { cghm4 cghm1 }
2123 @end lilypond
2124 @tab
2125 @code{loconga @* cgl @*}
2126 @lilypond[notime,ragged-right]
2127 \drums { cgl4 cgl1 }
2128 @end lilypond
2129
2130 @item
2131 @code{openloconga @* cglo @*}
2132 @lilypond[notime,ragged-right]
2133 \drums { cglo4 cglo1 }
2134 @end lilypond
2135 @tab
2136 @code{muteloconga @* cglm @*}
2137 @lilypond[notime,ragged-right]
2138 \drums { cglm4 cglm1 }
2139 @end lilypond
2140 @tab
2141 @code{hitimbale @* timh @*}
2142 @lilypond[notime,ragged-right]
2143 \drums { timh4 timh1 }
2144 @end lilypond
2145 @tab
2146 @code{lotimbale @* timl @*}
2147 @lilypond[notime,ragged-right]
2148 \drums { timl4 timl1 }
2149 @end lilypond
2150
2151 @item
2152 @code{hiagogo @* agh @*}
2153 @lilypond[notime,ragged-right]
2154 \drums { agh4 agh1 }
2155 @end lilypond
2156 @tab
2157 @code{loagogo @* agl @*}
2158 @lilypond[notime,ragged-right]
2159 \drums { agl4 agl1 }
2160 @end lilypond
2161 @tab
2162 @code{sidestick @* ss @*}
2163 @lilypond[notime,ragged-right]
2164 \drums { ss4 ss1 }
2165 @end lilypond
2166 @tab
2167 @code{hisidestick @* ssh @*}
2168 @lilypond[notime,ragged-right]
2169 \drums { ssh4 ssh1 }
2170 @end lilypond
2171
2172 @item
2173 @code{losidestick @* ssl @*}
2174 @lilypond[notime,ragged-right]
2175 \drums { ssl4 ssl1 }
2176 @end lilypond
2177 @tab
2178 @code{guiro @* gui @*}
2179 @lilypond[notime,ragged-right]
2180 \drums { gui4 gui1 }
2181 @end lilypond
2182 @tab
2183 @code{shortguiro @* guis @*}
2184 @lilypond[notime,ragged-right]
2185 \drums { guis4 guis1 }
2186 @end lilypond
2187 @tab
2188 @code{longguiro @* guil @*}
2189 @lilypond[notime,ragged-right]
2190 \drums { guil4 guil1 }
2191 @end lilypond
2192
2193 @item
2194 @code{cabasa @* cab @*}
2195 @lilypond[notime,ragged-right]
2196 \drums { cab4 cab1 }
2197 @end lilypond
2198 @tab
2199 @code{maracas @* mar @*}
2200 @lilypond[notime,ragged-right]
2201 \drums { mar4 mar1 }
2202 @end lilypond
2203 @tab
2204 @code{shortwhistle @* whs @*}
2205 @lilypond[notime,ragged-right]
2206 \drums { whs4 whs1 }
2207 @end lilypond
2208 @tab
2209 @code{longwhistle @* whl @*}
2210 @lilypond[notime,ragged-right]
2211 \drums { whl4 whl1 }
2212 @end lilypond
2213
2214 @item
2215 @code{handclap @* hc @*}
2216 @lilypond[notime,ragged-right]
2217 \drums { hc4 hc1 }
2218 @end lilypond
2219 @tab
2220 @code{tambourine @* tamb @*}
2221 @lilypond[notime,ragged-right]
2222 \drums { tamb4 tamb1 }
2223 @end lilypond
2224 @tab
2225 @code{vibraslap @* vibs @*}
2226 @lilypond[notime,ragged-right]
2227 \drums { vibs4 vibs1 }
2228 @end lilypond
2229 @tab
2230 @code{tamtam @* tt @*}
2231 @lilypond[notime,ragged-right]
2232 \drums { tt4 tt1 }
2233 @end lilypond
2234
2235 @item
2236 @code{claves @* cl @*}
2237 @lilypond[notime,ragged-right]
2238 \drums { cl4 cl1 }
2239 @end lilypond
2240 @tab
2241 @code{hiwoodblock @* wbh @*}
2242 @lilypond[notime,ragged-right]
2243 \drums { wbh4 wbh1 }
2244 @end lilypond
2245 @tab
2246 @code{lowoodblock @* wbl @*}
2247 @lilypond[notime,ragged-right]
2248 \drums { wbl4 wbl1 }
2249 @end lilypond
2250 @tab
2251 @code{opencuica @* cuio @*}
2252 @lilypond[notime,ragged-right]
2253 \drums { cuio4 cuio1 }
2254 @end lilypond
2255
2256 @item
2257 @code{mutecuica @* cuim @*}
2258 @lilypond[notime,ragged-right]
2259 \drums { cuim4 cuim1 }
2260 @end lilypond
2261 @tab
2262 @code{triangle @* tri @*}
2263 @lilypond[notime,ragged-right]
2264 \drums { tri4 tri1 }
2265 @end lilypond
2266 @tab
2267 @code{opentriangle @* trio @*}
2268 @lilypond[notime,ragged-right]
2269 \drums { trio4 trio1 }
2270 @end lilypond
2271 @tab
2272 @code{mutetriangle @* trim}
2273 @lilypond[notime,ragged-right]
2274 \drums { trim4 trim1 }
2275 @end lilypond
2276
2277 @item
2278 @code{oneup @* ua @*}
2279 @lilypond[notime,ragged-right]
2280 \drums { ua4 ua1 }
2281 @end lilypond
2282 @tab
2283 @code{twoup @* ub @*}
2284 @lilypond[notime,ragged-right]
2285 \drums { ub4 ub1 }
2286 @end lilypond
2287 @tab
2288 @code{threeup @* uc @*}
2289 @lilypond[notime,ragged-right]
2290 \drums { uc4 uc1 }
2291 @end lilypond
2292 @tab
2293 @code{fourup @* ud @*}
2294 @lilypond[notime,ragged-right]
2295 \drums { ud4 ud1 }
2296 @end lilypond
2297
2298 @item
2299 @code{fiveup @* ue @*}
2300 @lilypond[notime,ragged-right]
2301 \drums { ue4 ue1 }
2302 @end lilypond
2303 @tab
2304 @code{onedown @* da @*}
2305 @lilypond[notime,ragged-right]
2306 \drums { da4 da1 }
2307 @end lilypond
2308 @tab
2309 @code{twodown @* db @*}
2310 @lilypond[notime,ragged-right]
2311 \drums { db4 db1 }
2312 @end lilypond
2313 @tab
2314 @code{threedown @* dc @*}
2315 @lilypond[notime,ragged-right]
2316 \drums { dc4 dc1 }
2317 @end lilypond
2318
2319 @item
2320 @code{fourdown @* dd @*}
2321 @lilypond[notime,ragged-right]
2322 \drums { dd4 dd1 }
2323 @end lilypond
2324 @tab
2325 @code{fivedown @* de @*}
2326 @lilypond[notime,ragged-right]
2327 \drums { de4 de1 }
2328 @end lilypond
2329
2330
2331 @end multitable
2332
2333
2334 @node Technical glossary
2335 @appendixsec Technical glossary
2336
2337 A glossary of the technical terms and concepts used internally in
2338 LilyPond.  These terms may appear in the manuals, on mailing lists
2339 or in the source code.
2340
2341 @menu
2342 * alist::
2343 * callback::
2344 * closure::
2345 * glyph::
2346 * grob::
2347 * immutable::
2348 * interface::
2349 * lexer::
2350 * mutable::
2351 * output-def::
2352 * parser::
2353 * parser variable::
2354 * prob::
2355 * smob::
2356 * stencil::
2357 @end menu
2358
2359 @node alist
2360 @unnumberedsubsec alist
2361
2362 @cindex alist
2363 @cindex association list
2364
2365 An association list or @strong{alist} for short is a Scheme pair
2366 which associates a value with a key: @w{@code{(key . value)}}.  For
2367 example, in @file{scm/lily.scm}, the alist
2368 @w{@qq{type-p-name-alist}} associates certain type predicates
2369 (e.g., @code{ly:music?}) with names (e.g., @qq{music}) so
2370 that type-check failures can be reported with a console message that
2371 includes the name of the expected type predicate.
2372
2373 @node callback
2374 @unnumberedsubsec callback
2375
2376 @cindex callback
2377
2378 A @strong{callback} is a routine, function or method whose reference is
2379 passed as an argument in a call to another routine, so allowing
2380 the called routine to invoke it.  The technique enables a lower-
2381 level software layer to call a function defined in a higher
2382 layer.  Callbacks are used extensively in LilyPond to permit
2383 user-level Scheme code to define how many low-level actions are
2384 performed.
2385
2386
2387 @node closure
2388 @unnumberedsubsec closure
2389
2390 @cindex closure
2391
2392 In Scheme, a @strong{closure} is created when a function, usually
2393 a lambda expression, is passed as a variable.  The closure contains
2394 the function's code plus references to the lexical bindings of the
2395 function's free variables (i.e., those variables used in the
2396 expression but defined outside it).  When this function is applied
2397 to different arguments later, the free variable bindings that were
2398 captured in the closure are used to obtain the values of the free
2399 variables to be used in the calculation.  One useful property of
2400 closures is the retention of internal variable values between
2401 invocations, so permitting state to be maintained.
2402
2403
2404 @node glyph
2405 @unnumberedsubsec glyph
2406
2407 @cindex glyph
2408 @cindex font
2409 @cindex typeface
2410
2411 A @strong{glyph} is a particular graphical representation of a typographic
2412 character, or a combination of two characters formating a ligature.
2413 A set of glyphs with a single style and shape comprise a font, and
2414 a set of fonts covering several styles and sizes comprise a typeface.
2415
2416 @seealso
2417 Notation Reference:
2418 @ref{Fonts},
2419 @ref{Special characters}.
2420
2421
2422 @node grob
2423 @unnumberedsubsec grob
2424
2425 @cindex grob
2426 @cindex layout objects
2427 @cindex graphical objects
2428
2429 LilyPond objects which represent items of notation in the printed
2430 output such as note heads, stems, slurs, ties, fingering, clefs,
2431 etc are called @q{Layout objects}, often known as @q{GRaphical
2432 OBjects}, or @strong{grobs} for short.  They are represented by
2433 instances of the @code{Grob} class.
2434
2435 @seealso
2436 Learning Manual:
2437 @rlearning{Objects and interfaces},
2438 @rlearning{Naming conventions of objects and properties},
2439 @rlearning{Properties of layout objects}.
2440
2441 Internals Reference:
2442 @rinternals{grob-interface},
2443 @rinternals{All layout objects}.
2444
2445
2446 @node immutable
2447 @unnumberedsubsec immutable
2448
2449 @cindex immutable objects
2450 @cindex immutable properties
2451 @cindex shared properties
2452
2453 An @strong{immutable} object is one whose state cannot be modified
2454 after creation, in contrast to a mutable object, which can be
2455 modified after creation.
2456
2457 In LilyPond, immutable or shared properties define the default
2458 style and behavior of grobs.  They are shared between many objects.
2459 In apparent contradiction to the name, they can be changed using
2460 @code{\override} and @code{\revert}.
2461
2462 @seealso
2463 Notation Reference:
2464 @ref{mutable}.
2465
2466
2467 @node interface
2468 @unnumberedsubsec interface
2469
2470 @cindex interface
2471 @cindex grob-interface
2472 @cindex graphical object interfaces
2473
2474 Actions and properties which are common to a number of grobs are
2475 grouped together in an object called a @code{grob-interface}, or
2476 just @q{interface} for short.
2477
2478 @seealso
2479 Learning Manual:
2480 @rlearning{Objects and interfaces},
2481 @rlearning{Naming conventions of objects and properties},
2482 @rlearning{Properties found in interfaces}.
2483
2484 Notation Reference:
2485 @ref{Layout interfaces}.
2486
2487 Internals Reference:
2488 @rinternals{Graphical Object Interfaces}.
2489
2490
2491 @node lexer
2492 @unnumberedsubsec lexer
2493
2494 @cindex lexer
2495 @cindex Flex
2496
2497 A @strong{lexer} is a program which converts a sequence of
2498 characters into a sequence of tokens, a process called lexical
2499 analysis.  The LilyPond lexer converts the stream obtained from an
2500 input @file{.ly} file into a tokenized stream more suited to the
2501 next stage of processing - parsing, for which see @ref{parser}.
2502 The LilyPond lexer is built with Flex from the lexer file
2503 @file{lily/lexer.ll} which contains the lexical rules.  This file
2504 is part of the source code and is not included in the LilyPond
2505 binary installation.
2506
2507
2508 @node mutable
2509 @unnumberedsubsec mutable
2510
2511 @cindex mutable objects
2512 @cindex mutable properties
2513
2514 A @strong{mutable} object is one whose state can be modified after
2515 creation, in contrast to an immutable object, whose state is fixed
2516 at the time of creation.
2517
2518 In LilyPond, mutable properties contain values that are specific to
2519 one grob.  Typically, lists of other objects or results from
2520 computations are stored in mutable properties.
2521
2522 @seealso
2523 Notation Reference:
2524 @ref{immutable}.
2525
2526
2527 @node output-def
2528 @unnumberedsubsec output-def
2529
2530 @cindex output-def
2531
2532 An instance of the @code{Output-def} class contains the methods and
2533 data structures associated with an output block.  Instances are
2534 created for midi, layout and paper blocks.
2535
2536
2537 @node parser
2538 @unnumberedsubsec parser
2539
2540 @cindex parser
2541 @cindex Bison
2542 @cindex LilyPond grammar
2543 @cindex grammar for LilyPond
2544 @cindex BNF
2545
2546 A @strong{parser} analyzes the sequence of tokens produced by a
2547 lexer to determine its grammatical structure, grouping the tokens
2548 progressively into larger groupings according to the rules of the
2549 grammar.  If the sequence of tokens is valid the end product is a
2550 tree of tokens whose root is the grammar's start symbol.  If this
2551 cannot be achieved the file is invalid and an appropriate error
2552 message is produced.  The syntactic groupings and the rules for
2553 constructing the groupings from their parts for the LilyPond syntax
2554 are defined in @file{lily/parser.yy} and shown in Backus Normal Form
2555 (BNF) in @rcontrib{LilyPond grammar}.  This file is used to build the
2556 parser during the program build by the parser generator, Bison.  It is
2557 part of the source code and is not included in the LilyPond binary
2558 installation.
2559
2560
2561 @node parser variable
2562 @unnumberedsubsec parser variable
2563
2564 @cindex parser variable
2565 @cindex Scheme variable
2566 @cindex global variable
2567 @cindex afterGraceFraction
2568 @cindex musicQuotes
2569 @cindex mode
2570 @cindex output-count
2571 @cindex output-suffix
2572 @cindex partCombineListener
2573 @cindex pitchnames
2574 @cindex toplevel-bookparts
2575 @cindex toplevel-scores
2576 @cindex showLastLength
2577 @cindex showFirstLength
2578
2579 These are variables defined directly in Scheme.  Their direct
2580 use by users is strongly discouraged, because their scoping
2581 semantics can be confusing.
2582
2583 When the value of such a variable is changed in a @file{.ly} file,
2584 the change is global, and unless explicitly reverted, the new value
2585 will persist to the end of the file, affecting subsequent
2586 @code{\score} blocks as well as external files added with the
2587 @code{\include} command.  This can lead to unintended consequences
2588 and in complex typesetting projects the consequent errors can be
2589 difficult to track down.
2590
2591 LilyPond uses the following parser variables:
2592
2593 @itemize
2594 @item afterGraceFraction
2595 @item musicQuotes
2596 @item mode
2597 @item output-count
2598 @item output-suffix
2599 @item partCombineListener
2600 @item pitchnames
2601 @item toplevel-bookparts
2602 @item toplevel-scores
2603 @item showLastLength
2604 @item showFirstLength
2605 @end itemize
2606
2607
2608 @node prob
2609 @unnumberedsubsec prob
2610
2611 @cindex prob
2612 @cindex property object
2613
2614 PRoperty OBjects, or @strong{probs} for short, are instances of
2615 the @code{Prob} class, a simple base class for objects which have
2616 mutable and immutable property alists and the methods to manipulate
2617 them.  The @code{Music} and @code{Stream_event} classes derive from
2618 @code{Prob}.  Instances of the @code{Prob} class are also created
2619 to hold the formatted content of system grobs and titling blocks
2620 during page layout.
2621
2622
2623 @node smob
2624 @unnumberedsubsec smob
2625
2626 @cindex smob
2627 @cindex Scheme object
2628
2629 @strong{Smobs}, or ScheMe OBjects, are part of the mechanism used
2630 by Guile to export C and C++ objects to Scheme code.  In LilyPond,
2631 smobs are created from C++ objects through macros.  There are two
2632 types of smob objects: simple smobs, intended for simple immutable
2633 objects like numbers, and complex smobs, used for objects with
2634 identities.  If you have access to the LilyPond sources, more
2635 information can be found in @file{lily/includes/smob.hh}.
2636
2637 @node stencil
2638 @unnumberedsubsec stencil
2639
2640 @cindex stencil
2641
2642 An instance of the @strong{stencil} class holds the information
2643 required to print a typographical object.  It is a simple smob
2644 containing a confining box, which defines the vertical and
2645 horizontal extents of the object, and a Scheme expression which
2646 will print the object when evaluated.  Stencils may be combined
2647 to form more complex stencils defined by a tree of Scheme
2648 expressions formed from the Scheme expressions of the component
2649 stencils.
2650
2651 The @code{stencil} property, which connects a grob to its stencil,
2652 is defined in the @code{grob-interface} interface.
2653
2654 @seealso
2655 Internals Reference:
2656 @rinternals{grob-interface}.
2657
2658
2659 @node All context properties
2660 @appendixsec All context properties
2661
2662 @include context-properties.tely
2663
2664
2665 @node Layout properties
2666 @appendixsec Layout properties
2667
2668 @include layout-properties.tely
2669
2670
2671 @node Available music functions
2672 @appendixsec Available music functions
2673
2674 @include identifiers.tely
2675
2676 @node Context modification identifiers
2677 @appendixsec Context modification identifiers
2678
2679 The following commands are defined for use as context modifications
2680 within a @code{\layout} or @code{\with} block.
2681
2682 @include context-mod-identifiers.tely
2683
2684 @node Predefined type predicates
2685 @appendixsec Predefined type predicates
2686
2687 @include type-predicates.tely
2688
2689
2690 @node Scheme functions
2691 @appendixsec Scheme functions
2692
2693 @include scheme-functions.tely
2694