1 @c -*- coding: utf-8; mode: texinfo; -*-
4 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
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..
13 @node Notation manual tables
14 @appendix Notation manual tables
18 * Common chord modifiers::
19 * Predefined string tunings::
20 * Predefined fretboard diagrams::
21 * Predefined paper sizes::
27 * Text markup commands::
28 * Text markup list commands::
29 * List of special characters::
30 * List of articulations::
32 * Technical glossary::
33 * All context properties::
35 * Available music functions::
36 * Context modification identifiers::
37 * Predefined type predicates::
43 @node Chord name chart
44 @appendixsec Chord name chart
46 The following chart shows two standard systems for printing chord
47 names, along with the pitches they represent.
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}
52 @node Common chord modifiers
53 @appendixsec Common chord modifiers
55 The following table shows chord modifiers that can be used to generate
56 standard chord structures.
58 @multitable @columnfractions .2 .25 .2 .15 .2
75 Major third, @*perfect fifth
81 @lilypond[line-width=2.1\cm,notime]
91 Minor third, @*perfect fifth
97 @lilypond[line-width=2.1\cm,noragged-right,notime]
107 Major third, @*augmented fifth
113 @lilypond[line-width=2.1\cm,noragged-right,notime]
116 \chordmode { c1:aug }
123 Minor third, @*diminished fifth
129 @lilypond[line-width=2.1\cm,noragged-right,notime]
132 \chordmode { c1:dim }
139 Major triad, @*minor seventh
145 @lilypond[line-width=2.1\cm,noragged-right,notime]
155 Major triad, @*major seventh
157 @code{maj7} or @code{maj}
161 @lilypond[line-width=2.1\cm,noragged-right,notime]
164 \chordmode { c1:maj7 }
171 Minor triad, @*minor seventh
177 @lilypond[line-width=2.1\cm,noragged-right,notime]
187 Diminished triad, @*diminished seventh
193 @lilypond[line-width=2.1\cm,noragged-right,notime]
196 \chordmode { c1:dim7 }
203 Augmented triad, @*minor seventh
209 @lilypond[line-width=2.1\cm,noragged-right,notime]
212 \chordmode { c1:aug7 }
217 Half-diminished seventh
219 Diminished triad, @*minor seventh
225 @lilypond[line-width=2.1\cm,noragged-right,notime]
228 \chordmode { c1:m7.5- }
235 Minor triad, @*major seventh
241 @lilypond[line-width=2.1\cm,noragged-right,notime]
244 \chordmode { c1:m7+ }
257 @lilypond[line-width=2.1\cm,noragged-right,notime]
273 @lilypond[line-width=2.1\cm,noragged-right,notime]
283 Dominant seventh, @*major ninth
289 @lilypond[line-width=2.1\cm,noragged-right,notime]
299 Major seventh, @*major ninth
305 @lilypond[line-width=2.1\cm,noragged-right,notime]
308 \chordmode { c1:maj9 }
315 Minor seventh, @*major ninth
321 @lilypond[line-width=2.1\cm,noragged-right,notime]
331 Dominant ninth, @*perfect eleventh
337 @lilypond[line-width=2.1\cm,noragged-right,notime]
347 Major ninth, @*perfect eleventh
353 @lilypond[line-width=2.1\cm,noragged-right,notime]
356 \chordmode { c1:maj11 }
363 Minor ninth, @*perfect eleventh
369 @lilypond[line-width=2.1\cm,noragged-right,notime]
372 \chordmode { c1:m11 }
379 Dominant ninth, @*major thirteenth
385 @lilypond[line-width=2.1\cm,noragged-right,notime]
395 Dominant eleventh, @*major thirteenth
401 @lilypond[line-width=2.1\cm,noragged-right,notime]
404 \chordmode { c1:13.11 }
411 Major eleventh, @*major thirteenth
417 @lilypond[line-width=2.1\cm,noragged-right,notime]
419 \chords { c1:maj13.11 }
420 \chordmode { c1:maj13.11 }
427 Minor eleventh, @*major thirteenth
433 @lilypond[line-width=2.1\cm,noragged-right,notime]
435 \chords { c1:m13.11 }
436 \chordmode { c1:m13.11 }
443 Major second, @*perfect fifth
449 @lilypond[line-width=2.1\cm,noragged-right,notime]
452 \chordmode { c1:sus2 }
459 Perfect fourth, @*perfect fifth
465 @lilypond[line-width=2.1\cm,noragged-right,notime]
468 \chordmode { c1:sus4 }
473 Power chord @*(two-voiced)
479 @code{\powerChords c1:1.5}
481 @lilypond[line-width=2.1\cm,noragged-right,notime]
482 \chordmode { \powerChords c1:1.5 }
486 Power chord @*@w{(three-voiced)}
488 Perfect fifth, @*octave
492 @code{\powerChords c1:1.5.8}
494 @lilypond[line-width=2.1\cm,noragged-right,notime]
495 \chordmode { \powerChords c1:1.5.8 }
500 @node Predefined string tunings
501 @appendixsec Predefined string tunings
503 The chart below shows the predefined string tunings.
505 @lilypondfile{display-predefined-string-tunings.ly}
507 @node Predefined fretboard diagrams
508 @appendixsec Predefined fretboard diagrams
511 * Diagrams for Guitar::
512 * Diagrams for Ukulele::
513 * Diagrams for Mandolin::
516 @node Diagrams for Guitar
517 @unnumberedsubsec Diagrams for Guitar
519 @lilypondfile[line-width=15.5\cm]{display-predefined-fretboards.ly}
521 @node Diagrams for Ukulele
522 @unnumberedsubsec Diagrams for Ukulele
524 @lilypondfile[line-width=15.5\cm]{display-predefined-ukulele-fretboards.ly}
526 @node Diagrams for Mandolin
527 @unnumberedsubsec Diagrams for Mandolin
529 @lilypondfile[line-width=15.5\cm]{display-predefined-mandolin-fretboards.ly}
532 @node Predefined paper sizes
533 @appendixsec Predefined paper sizes
535 Paper sizes are defined in @file{scm/paper.scm}
538 @strong{The @qq{ISO 216} A Series}
565 @strong{The @qq{ISO 216} B Series}
592 @strong{Two extended sizes as defined in @qq{DIN 476}}
601 @strong{@qq{ISO 269} standard C series}
628 @strong{North American paper sizes}
647 @strong{Government-letter by IEEE Printer Working Group, for children's
650 @item "government-letter"
652 @item "government-legal"
654 @item "philippine-legal"
671 @item "engineering f"
676 @strong{North American Architectural sizes}
693 @strong{Antique sizes still used in the United Kingdom}
742 @strong{PA4 based sizes}
769 @strong{Used in Southeast Asia and Australia}
776 @strong{Used for very small @code{@@lilypond} examples in the
777 documentation based on a8 landscape.}
784 @node MIDI instruments
785 @appendixsec MIDI instruments
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.
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
840 @appendixsec List of colors
842 @subsubheading Normal colors
844 Usage syntax is detailed in @ref{Coloring objects}.
846 @cindex List of colors
847 @cindex Colors, list of
850 black white red green
851 blue cyan magenta yellow
852 grey darkred darkgreen darkblue
853 darkcyan darkmagenta darkyellow
857 @subsubheading X color names
859 X color names come several variants:
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}).
865 The word @q{grey} can always be spelled @q{gray} (e.g. @q{DarkSlateGray}).
867 Some names can take a numerical suffix (e.g. @q{LightSalmon4}).
870 @subsubheading Color Names without a numerical suffix:
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
904 @subsubheading Color names with a numerical suffix
906 In the following names the suffix N can be a number in the range 1-4:
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
928 @subsubheading Grey Scale
930 A grey scale can be obtained using:
937 Where N is in the range 0-100.
941 @appendixsec The Feta font
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}.
956 * Time Signature glyphs::
958 * Accidental glyphs::
959 * Default Notehead glyphs::
960 * Special Notehead glyphs::
961 * Shape-note Notehead glyphs::
968 * Bracket-tip glyphs::
976 * Neomensural glyphs::
979 * Kievan Notation glyphs::
984 @unnumberedsubsec Clef glyphs
987 \include "font-table.ly"
988 \markuplist \override-lines #'(word-space . 4)
993 @node Time Signature glyphs
994 @unnumberedsubsec Time Signature glyphs
997 \include "font-table.ly"
998 \markuplist \override-lines #'(word-space . 4)
1004 @unnumberedsubsec Number glyphs
1007 \include "font-table.ly"
1008 \markuplist \override-lines #'(word-space . 4)
1013 @node Accidental glyphs
1014 @unnumberedsubsec Accidental glyphs
1017 \include "font-table.ly"
1018 \markuplist \override-lines #'(word-space . 4)
1019 \doc-chars #accidentals
1023 @node Default Notehead glyphs
1024 @unnumberedsubsec Default Notehead glyphs
1027 \include "font-table.ly"
1028 \markuplist \override-lines #'(word-space . 4)
1029 \doc-chars #default-noteheads
1033 @node Special Notehead glyphs
1034 @unnumberedsubsec Special Notehead glyphs
1037 \include "font-table.ly"
1038 \markuplist \override-lines #'(word-space . 4)
1039 \doc-chars #special-noteheads
1043 @node Shape-note Notehead glyphs
1044 @unnumberedsubsec Shape-note Notehead glyphs
1047 \include "font-table.ly"
1048 \markuplist \override-lines #'(word-space . 4)
1049 \doc-chars #shape-note-noteheads
1054 @unnumberedsubsec Rest glyphs
1057 \include "font-table.ly"
1058 \markuplist \override-lines #'(word-space . 4)
1064 @unnumberedsubsec Flag glyphs
1067 \include "font-table.ly"
1068 \markuplist \override-lines #'(word-space . 4)
1074 @unnumberedsubsec Dot glyphs
1077 \include "font-table.ly"
1078 \markuplist \override-lines #'(word-space . 4)
1083 @node Dynamic glyphs
1084 @unnumberedsubsec Dynamic glyphs
1087 \include "font-table.ly"
1088 \markuplist \override-lines #'(word-space . 4)
1089 \doc-chars #dynamics
1094 @unnumberedsubsec Script glyphs
1097 \include "font-table.ly"
1098 \markuplist \override-lines #'(word-space . 4)
1103 @node Arrowhead glyphs
1104 @unnumberedsubsec Arrowhead glyphs
1107 \include "font-table.ly"
1108 \markuplist \override-lines #'(word-space . 4)
1109 \doc-chars #arrowheads
1113 @node Bracket-tip glyphs
1114 @unnumberedsubsec Bracket-tip glyphs
1117 \include "font-table.ly"
1118 \markuplist \override-lines #'(word-space . 4)
1119 \doc-chars #brackettips
1124 @unnumberedsubsec Pedal glyphs
1127 \include "font-table.ly"
1128 \markuplist \override-lines #'(word-space . 4)
1133 @node Accordion glyphs
1134 @unnumberedsubsec Accordion glyphs
1137 \include "font-table.ly"
1138 \markuplist \override-lines #'(word-space . 4)
1139 \doc-chars #accordion
1144 @unnumberedsubsec Tie glyphs
1147 \include "font-table.ly"
1148 \markuplist \override-lines #'(word-space . 4)
1153 @node Vaticana glyphs
1154 @unnumberedsubsec Vaticana glyphs
1157 \include "font-table.ly"
1158 \markuplist \override-lines #'(word-space . 4)
1159 \doc-chars #vaticana
1163 @node Medicaea glyphs
1164 @unnumberedsubsec Medicaea glyphs
1167 \include "font-table.ly"
1168 \markuplist \override-lines #'(word-space . 4)
1169 \doc-chars #medicaea
1173 @node Hufnagel glyphs
1174 @unnumberedsubsec Hufnagel glyphs
1177 \include "font-table.ly"
1178 \markuplist \override-lines #'(word-space . 4)
1179 \doc-chars #hufnagel
1183 @node Mensural glyphs
1184 @unnumberedsubsec Mensural glyphs
1187 \include "font-table.ly"
1188 \markuplist \override-lines #'(word-space . 4)
1189 \doc-chars #mensural
1193 @node Neomensural glyphs
1194 @unnumberedsubsec Neomensural glyphs
1197 \include "font-table.ly"
1198 \markuplist \override-lines #'(word-space . 4)
1199 \doc-chars #neomensural
1203 @node Petrucci glyphs
1204 @unnumberedsubsec Petrucci glyphs
1207 \include "font-table.ly"
1208 \markuplist \override-lines #'(word-space . 4)
1209 \doc-chars #petrucci
1213 @node Solesmes glyphs
1214 @unnumberedsubsec Solesmes glyphs
1217 \include "font-table.ly"
1218 \markuplist \override-lines #'(word-space . 4)
1219 \doc-chars #solesmes
1222 @node Kievan Notation glyphs
1223 @unnumberedsubsec Kievan Notation glyphs
1226 \include "font-table.ly"
1227 \markuplist \override-lines #'(word-space . 4)
1232 @node Note head styles
1233 @appendixsec Note head styles
1235 @cindex note head styles
1236 The following styles may be used for note heads.
1238 @lilypondfile[noindent]{note-head-style.ly}
1242 @appendixsec Clef styles
1244 The following table shows all the different clef styles possible
1245 (including where @emph{middle C} sits relative to the clef).
1247 @multitable @columnfractions .30 .2 .30 .2
1262 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1269 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1277 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1285 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1293 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1301 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1309 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1315 @code{\clef soprano}
1317 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1323 @code{\clef mezzosoprano}
1325 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1333 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1341 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1349 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1355 @code{\clef baritone}
1357 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1365 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1371 @code{\clef altovarC}
1373 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1379 @code{\clef tenorvarC}
1381 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1387 @code{\clef baritonevarC}
1389 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1395 @code{\clef varbaritone}
1397 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1403 @code{\clef baritonevarF}
1405 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1413 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1421 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1427 @code{\clef subbass}
1429 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1435 @code{\clef percussion}
1437 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1443 @c @example does not work as expected within multitables
1450 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1458 @c @example does not work as expected within multitables
1461 @ @ \clef moderntab @*
1465 @lilypond[line-width=3\cm,notime,ragged-right,relative=1]
1476 @node Text markup commands
1477 @appendixsec Text markup commands
1479 @include markup-commands.tely
1482 @node Text markup list commands
1483 @appendixsec Text markup list commands
1485 The following commands can all be used with @code{\markuplist}:
1487 @include markup-list-commands.tely
1490 @node List of special characters
1491 @appendixsec List of special characters
1493 The following special characters references can be used;
1494 for more details, see @ref{ASCII aliases}.
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{}.
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.
1504 \include "special-characters.ly"
1508 @node List of articulations
1509 @appendixsec List of articulations
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.
1517 @c Articulations and ornamentations
1518 @c Fingering instructions (for "thumb")
1519 @c Common notation for unfretted strings
1520 @c Bowing indications
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)
1528 * Articulation scripts::
1529 * Ornament scripts::
1531 * Instrument-specific scripts::
1532 * Repeat sign scripts::
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
1548 @cindex staccatissimo
1553 @node Articulation scripts
1554 @unnumberedsubsec Articulation scripts
1556 @multitable @columnfractions .22 .25 .25 .25
1559 @code{\accent} or @code{->}
1560 @lilypond[notime,relative=2]
1561 f^\accent e,_\accent b'\accent
1565 @lilypond[notime,relative=2]
1566 f^\espressivo e,_\espressivo b'\espressivo
1569 @code{\marcato} or @code{-^}
1570 @lilypond[notime,relative=2]
1571 f^\marcato e,_\marcato b'\marcato
1574 @code{\portato} or @code{-_}
1575 @lilypond[notime,relative=2]
1576 f^\portato e,_\portato b'\portato
1580 @code{\staccatissimo} @* or @code{-!}
1581 @lilypond[notime,relative=2]
1582 f^\staccatissimo e,_\staccatissimo b'\staccatissimo
1585 @code{\staccato} or @code{-.}
1586 @lilypond[notime,relative=2]
1587 f^\staccato e,_\staccato b'\staccato
1590 @code{\tenuto} or @code{--}
1591 @lilypond[notime,relative=2]
1592 f^\tenuto e,_\tenuto b'\tenuto
1604 @cindex prallmordent
1612 @node Ornament scripts
1613 @unnumberedsubsec Ornament scripts
1615 @multitable @columnfractions .22 .25 .25 .25
1619 @lilypond[notime,relative=2]
1620 f^\prall e,_\prall b'\prall
1624 @lilypond[notime,relative=2]
1625 f^\prallup e,_\prallup b'\prallup
1629 @lilypond[notime,relative=2]
1630 f^\pralldown e,_\pralldown b'\pralldown
1634 @lilypond[notime,relative=2]
1635 f^\upprall e,_\upprall b'\upprall
1640 @lilypond[notime,relative=2]
1641 f^\downprall e,_\downprall b'\downprall
1645 @lilypond[notime,relative=2]
1646 f^\prallprall e,_\prallprall b'\prallprall
1650 @lilypond[notime,relative=2]
1651 f^\lineprall e,_\lineprall b'\lineprall
1654 @code{\prallmordent}
1655 @lilypond[notime,relative=2]
1656 f^\prallmordent e,_\prallmordent b'\prallmordent
1661 @lilypond[notime,relative=2]
1662 f^\mordent e,_\mordent b'\mordent
1666 @lilypond[notime,relative=2]
1667 f^\upmordent e,_\upmordent b'\upmordent
1671 @lilypond[notime,relative=2]
1672 f^\downmordent e,_\downmordent b'\downmordent
1676 @lilypond[notime,relative=2]
1677 f^\trill e,_\trill b'\trill
1682 @lilypond[notime,relative=2]
1683 f^\turn e,_\turn b'\reverseturn
1687 @lilypond[notime,relative=2]
1688 f^\reverseturn e,_\reverseturn b'\reverseturn
1694 @cindex shortfermata
1696 @cindex verylongfermata
1698 @node Fermata scripts
1699 @unnumberedsubsec Fermata scripts
1701 @multitable @columnfractions .22 .25 .25 .25
1704 @code{\shortfermata}
1705 @lilypond[notime,relative=2]
1706 f^\shortfermata e,_\shortfermata b'\shortfermata
1710 @lilypond[notime,relative=2]
1711 f^\fermata e,_\fermata b'\fermata
1715 @lilypond[notime,relative=2]
1716 f^\longfermata e,_\longfermata b'\longfermata
1719 @code{\verylongfermata}
1720 @lilypond[notime,relative=2]
1721 f^\verylongfermata e,_\verylongfermata b'\verylongfermata
1735 @cindex snappizzicato
1738 @node Instrument-specific scripts
1739 @unnumberedsubsec Instrument-specific scripts
1741 @multitable @columnfractions .22 .25 .25 .25
1745 @lilypond[notime,relative=2]
1746 f^\upbow e,_\upbow b'\upbow
1750 @lilypond[notime,relative=2]
1751 f^\downbow e,_\downbow b'\downbow
1755 @lilypond[notime,relative=2]
1756 f^\flageolet e,_\flageolet b'\flageolet
1760 @lilypond[notime,relative=2]
1761 f^\open e,_\open b'\open
1766 @lilypond[notime,relative=2]
1767 f^\halfopen e,_\halfopen b'\halfopen
1771 @lilypond[notime,relative=2]
1772 f^\lheel e,_\lheel b'\lheel
1776 @lilypond[notime,relative=2]
1777 f^\rheel e,_\rheel b'\rheel
1781 @lilypond[notime,relative=2]
1782 f^\ltoe e,_\ltoe b'\ltoe
1787 @lilypond[notime,relative=2]
1788 f^\rtoe e,_\rtoe b'\rtoe
1791 @code{\snappizzicato}
1792 @lilypond[notime,relative=2]
1793 f^\snappizzicato e,_\snappizzicato b'\snappizzicato
1796 @code{\stopped} or @code{-+}
1797 @lilypond[notime,relative=2]
1798 f^\stopped e,_\stopped b'\stopped
1807 @node Repeat sign scripts
1808 @unnumberedsubsec Repeat sign scripts
1810 @multitable @columnfractions .22 .25 .25 .25
1814 @lilypond[notime,relative=2]
1815 f^\segno e,_\segno b'\segno
1819 @lilypond[notime,relative=2]
1820 f^\coda e,_\coda b'\coda
1824 @lilypond[notime,relative=2]
1825 f^\varcoda e,_\varcoda b'\varcoda
1833 @cindex semicirculus
1834 @cindex signumcongruentiae
1836 @node Ancient scripts
1837 @unnumberedsubsec Ancient scripts
1839 @multitable @columnfractions .22 .25 .25 .25
1844 \include "gregorian.ly"
1845 \new VaticanaStaff { e'^\accentus s4 f_\accentus s4 b\accentus}
1850 \include "gregorian.ly"
1851 \new VaticanaStaff { e'^\circulus s4 f_\circulus s4 b\circulus }
1856 \include "gregorian.ly"
1857 \new VaticanaStaff { e'^\ictus s4 f_\ictus s4 b\ictus}
1861 @code{\semicirculus}
1863 \include "gregorian.ly"
1864 \new VaticanaStaff {
1865 e'^\semicirculus s4 f_\semicirculus s4 b\semicirculus
1869 @code{\signumcongruentiae}
1871 \include "gregorian.ly"
1872 \new VaticanaStaff {
1873 e'^\signumcongruentiae s4
1874 f_\signumcongruentiae s4
1875 b\signumcongruentiae
1882 @node Percussion notes
1883 @appendixsec Percussion notes
1885 @lilypondfile[quote]{percussion-chart.ly}
1888 @node Technical glossary
1889 @appendixsec Technical glossary
1891 A glossary of the technical terms and concepts used internally in
1892 LilyPond. These terms may appear in the manuals, on mailing lists
1893 or in the source code.
1915 @unnumberedsubsec alist
1918 @cindex association list
1920 An association list or @strong{alist} for short is a Scheme pair
1921 which associates a value with a key: @w{@code{(key . value)}}. For
1922 example, in @file{scm/lily.scm}, the alist
1923 @w{@qq{type-p-name-alist}} associates certain type predicates
1924 (e.g.@tie{}@code{ly:music?}) with names (e.g.@tie{}@qq{music}) so
1925 that type-check failures can be reported with a console message that
1926 includes the name of the expected type predicate.
1929 @unnumberedsubsec callback
1933 A @strong{callback} is a routine, function or method whose reference is
1934 passed as an argument in a call to another routine, so allowing
1935 the called routine to invoke it. The technique enables a lower-
1936 level software layer to call a function defined in a higher
1937 layer. Callbacks are used extensively in LilyPond to permit
1938 user-level Scheme code to define how many low-level actions are
1943 @unnumberedsubsec closure
1946 @cindex simple closure
1948 In Scheme, a @strong{closure} is created when a function, usually
1949 a lambda expression, is passed as a variable. The closure contains
1950 the function's code plus references to the lexical bindings of the
1951 function's free variables (i.e. those variables used in the
1952 expression but defined outside it). When this function is applied
1953 to different arguments later, the free variable bindings that were
1954 captured in the closure are used to obtain the values of the free
1955 variables to be used in the calculation. One useful property of
1956 closures is the retention of internal variable values between
1957 invocations, so permitting state to be maintained.
1959 A @strong{simple closure} is a closure whose expression has no free
1960 variables and hence no free variable bindings.
1962 A simple closure is represented in LilyPond by a smob containing
1963 the expression and a method to apply the expression to a passed
1968 @unnumberedsubsec glyph
1974 A @strong{glyph} is a particular graphical representation of a typographic
1975 character, or a combination of two characters formating a ligature.
1976 A set of glyphs with a single style and shape comprise a font, and
1977 a set of fonts covering several styles and sizes comprise a typeface.
1982 @ref{Special characters}.
1986 @unnumberedsubsec grob
1989 @cindex layout objects
1990 @cindex graphical objects
1992 LilyPond objects which represent items of notation in the printed
1993 output such as note heads, stems, slurs, ties, fingering, clefs,
1994 etc are called @q{Layout objects}, often known as @q{GRaphical
1995 OBjects}, or @strong{grobs} for short. They are represented by
1996 instances of the @code{Grob} class.
2000 @rlearning{Objects and interfaces},
2001 @rlearning{Naming conventions of objects and properties},
2002 @rlearning{Properties of layout objects}.
2004 Internals Reference:
2005 @rinternals{grob-interface},
2006 @rinternals{All layout objects}.
2010 @unnumberedsubsec immutable
2012 @cindex immutable objects
2013 @cindex immutable properties
2014 @cindex shared properties
2016 An @strong{immutable} object is one whose state cannot be modified
2017 after creation, in contrast to a mutable object, which can be
2018 modified after creation.
2020 In LilyPond, immutable or shared properties define the default
2021 style and behavior of grobs. They are shared between many objects.
2022 In apparent contradiction to the name, they can be changed using
2023 @code{\override} and @code{\revert}.
2031 @unnumberedsubsec interface
2034 @cindex grob-interface
2035 @cindex graphical object interfaces
2037 Actions and properties which are common to a number of grobs are
2038 grouped together in an object called a @code{grob-interface}, or
2039 just @q{interface} for short.
2043 @rlearning{Objects and interfaces},
2044 @rlearning{Naming conventions of objects and properties},
2045 @rlearning{Properties found in interfaces}.
2048 @ref{Layout interfaces}.
2050 Internals Reference:
2051 @rinternals{Graphical Object Interfaces}.
2055 @unnumberedsubsec lexer
2060 A @strong{lexer} is a program which converts a sequence of
2061 characters into a sequence of tokens, a process called lexical
2062 analysis. The LilyPond lexer converts the stream obtained from an
2063 input @file{.ly} file into a tokenized stream more suited to the
2064 next stage of processing - parsing, for which see @ref{parser}.
2065 The LilyPond lexer is built with Flex from the lexer file
2066 @file{lily/lexer.ll} which contains the lexical rules. This file
2067 is part of the source code and is not included in the LilyPond
2068 binary installation.
2072 @unnumberedsubsec mutable
2074 @cindex mutable objects
2075 @cindex mutable properties
2077 A @strong{mutable} object is one whose state can be modified after
2078 creation, in contrast to an immutable object, whose state is fixed
2079 at the time of creation.
2081 In LilyPond, mutable properties contain values that are specific to
2082 one grob. Typically, lists of other objects or results from
2083 computations are stored in mutable properties.
2091 @unnumberedsubsec output-def
2095 An instance of the @code{Output-def} class contains the methods and
2096 data structures associated with an output block. Instances are
2097 created for midi, layout and paper blocks.
2101 @unnumberedsubsec parser
2105 @cindex LilyPond grammar
2106 @cindex grammar for LilyPond
2109 A @strong{parser} analyzes the sequence of tokens produced by a
2110 lexer to determine its grammatical structure, grouping the tokens
2111 progressively into larger groupings according to the rules of the
2112 grammar. If the sequence of tokens is valid the end product is a
2113 tree of tokens whose root is the grammar's start symbol. If this
2114 cannot be achieved the file is invalid and an appropriate error
2115 message is produced. The syntactic groupings and the rules for
2116 constructing the groupings from their parts for the LilyPond syntax
2117 are defined in @file{lily/parser.yy} and shown in Backus Normal Form
2118 (BNF) in @rcontrib{LilyPond grammar}. This file is used to build the
2119 parser during the program build by the parser generator, Bison. It is
2120 part of the source code and is not included in the LilyPond binary
2124 @node parser variable
2125 @unnumberedsubsec parser variable
2127 @cindex parser variable
2128 @cindex Scheme variable
2129 @cindex global variable
2130 @cindex afterGraceFraction
2133 @cindex output-count
2134 @cindex output-suffix
2135 @cindex partCombineListener
2137 @cindex toplevel-bookparts
2138 @cindex toplevel-scores
2139 @cindex showLastLength
2140 @cindex showFirstLength
2142 These are variables defined directly in Scheme. Their direct
2143 use by users is strongly discouraged, because their scoping
2144 semantics can be confusing.
2146 When the value of such a variable is changed in a @file{.ly} file,
2147 the change is global, and unless explicitly reverted, the new value
2148 will persist to the end of the file, affecting subsequent
2149 @code{\score} blocks as well as external files added with the
2150 @code{\include} command. This can lead to unintended consequences
2151 and in complex typesetting projects the consequent errors can be
2152 difficult to track down.
2154 LilyPond uses the following parser variables:
2157 @item afterGraceFraction
2162 @item partCombineListener
2164 @item toplevel-bookparts
2165 @item toplevel-scores
2166 @item showLastLength
2167 @item showFirstLength
2172 @unnumberedsubsec prob
2175 @cindex property object
2177 PRoperty OBjects, or @strong{probs} for short, are instances of
2178 the @code{Prob} class, a simple base class for objects which have
2179 mutable and immutable property alists and the methods to manipulate
2180 them. The @code{Music} and @code{Stream_event} classes derive from
2181 @code{Prob}. Instances of the @code{Prob} class are also created
2182 to hold the formatted content of system grobs and titling blocks
2186 @node simple closure
2187 @unnumberedsubsec simple closure
2193 @unnumberedsubsec smob
2196 @cindex Scheme object
2198 @strong{Smobs}, or ScheMe OBjects, are part of the mechanism used
2199 by Guile to export C and C++ objects to Scheme code. In LilyPond,
2200 smobs are created from C++ objects through macros. There are two
2201 types of smob objects: simple smobs, intended for simple immutable
2202 objects like numbers, and complex smobs, used for objects with
2203 identities. If you have access to the LilyPond sources, more
2204 information can be found in @file{lily/includes/smob.hh}.
2207 @unnumberedsubsec stencil
2211 An instance of the @strong{stencil} class holds the information
2212 required to print a typographical object. It is a simple smob
2213 containing a confining box, which defines the vertical and
2214 horizontal extents of the object, and a Scheme expression which
2215 will print the object when evaluated. Stencils may be combined
2216 to form more complex stencils defined by a tree of Scheme
2217 expressions formed from the Scheme expressions of the component
2220 The @code{stencil} property, which connects a grob to its stencil,
2221 is defined in the @code{grob-interface} interface.
2224 Internals Reference:
2225 @rinternals{grob-interface}.
2228 @node All context properties
2229 @appendixsec All context properties
2231 @include context-properties.tely
2234 @node Layout properties
2235 @appendixsec Layout properties
2237 @include layout-properties.tely
2240 @node Available music functions
2241 @appendixsec Available music functions
2243 @include identifiers.tely
2245 @node Context modification identifiers
2246 @appendixsec Context modification identifiers
2248 The following commands are defined for use as context modifications
2249 within a @code{\layout} or @code{\with} block.
2251 @include context-mod-identifiers.tely
2253 @node Predefined type predicates
2254 @appendixsec Predefined type predicates
2256 @include type-predicates.tely
2259 @node Scheme functions
2260 @appendixsec Scheme functions
2262 @include scheme-functions.tely