A. LilyPond grammar
This appendix contains a description of the LilyPond grammar, as
output from the parser.
Grammar
1 start_symbol: lilypond
3 | "#{" embedded_lilypond
4 lilypond: %empty
5 | lilypond toplevel_expression
6 | lilypond assignment
7 | lilypond error
8 | lilypond "\version-error"
9 toplevel_expression: header_block
10 | book_block
11 | bookpart_block
12 | BOOK_IDENTIFIER
13 | score_block
14 | composite_music
15 | full_markup
16 | full_markup_list
17 | SCM_TOKEN
18 | embedded_scm_active
19 | output_def
20 lookup: LOOKUP_IDENTIFIER
21 | LOOKUP_IDENTIFIER '.' symbol_list_rev
22 embedded_scm_bare: SCM_TOKEN
23 | SCM_IDENTIFIER
24 embedded_scm_active: SCM_IDENTIFIER
25 | scm_function_call
26 | lookup
27 embedded_scm_bare_arg: SCM_ARG
28 | SCM_TOKEN
29 | FRACTION
30 | partial_markup
31 | full_markup_list
32 | context_modification
33 | header_block
34 | score_block
35 | context_def_spec_block
36 | book_block
37 | bookpart_block
38 | output_def
39 | lookup
40 embedded_scm: embedded_scm_bare
41 | scm_function_call
42 | lookup
43 embedded_scm_arg: embedded_scm_bare_arg
44 | scm_function_call
45 | music_assign
46 scm_function_call: SCM_FUNCTION function_arglist
47 embedded_lilypond_number: '-' embedded_lilypond_number
48 | bare_number_common
49 | UNSIGNED NUMBER_IDENTIFIER
50 embedded_lilypond: %empty
51 | identifier_init_nonumber
52 | embedded_lilypond_number
53 | post_event
54 | multiplied_duration post_events
55 | music_embedded music_embedded music_list
56 | error
57 | "\version-error" embedded_lilypond
58 lilypond_header_body: %empty
59 | lilypond_header_body assignment
60 | lilypond_header_body SCM_TOKEN
61 | lilypond_header_body embedded_scm_active
62 lilypond_header: "\header" '{' lilypond_header_body '}'
64 header_block: lilypond_header
65 assignment_id: STRING
66 | SYMBOL
67 assignment: assignment_id '=' identifier_init
68 | assignment_id '.' property_path '=' identifier_init
69 | assignment_id ',' property_path '=' identifier_init
70 | markup_mode_word '=' identifier_init
71 identifier_init: identifier_init_nonumber
72 | number_expression
73 | symbol_list_part_bare '.' property_path
74 | symbol_list_part_bare ',' property_path
75 | post_event_nofinger post_events
76 identifier_init_nonumber: header_block
77 | score_block
78 | book_block
79 | bookpart_block
80 | output_def
81 | context_def_spec_block
82 | music_assign
83 | pitch_or_music
84 | FRACTION
85 | string
86 | embedded_scm
87 | partial_markup
88 | full_markup_list
89 | context_modification
90 | partial_function "\etc"
91 partial_function_scriptable: MUSIC_FUNCTION function_arglist_partial
92 | EVENT_FUNCTION function_arglist_partial
93 | SCM_FUNCTION function_arglist_partial
94 | MUSIC_FUNCTION
"scheme?"
function_arglist_optional
partial_function
95 | EVENT_FUNCTION
"scheme?"
function_arglist_optional
partial_function
96 | SCM_FUNCTION
"scheme?"
function_arglist_optional
partial_function
97 | MUSIC_FUNCTION
"optional?"
"scheme?"
function_arglist_nonbackup
partial_function
98 | EVENT_FUNCTION
"optional?"
"scheme?"
function_arglist_nonbackup
partial_function
99 | SCM_FUNCTION
"optional?"
"scheme?"
function_arglist_nonbackup
partial_function
100 partial_function: partial_function_scriptable
101 | "\override" grob_prop_path '='
102 | "\set" context_prop_spec '='
103 | "\override" grob_prop_path '=' partial_function
104 | "\set" context_prop_spec '=' partial_function
105 | script_dir markup_mode markup_partial_function
106 | script_dir partial_function_scriptable
107 | script_dir
108 context_def_spec_block: "\context" '{' context_def_spec_body '}'
109 context_mod_arg: embedded_scm
111 | composite_music
112 context_def_spec_body: %empty
113 | context_def_spec_body context_mod
114 | context_def_spec_body context_modification
115 | context_def_spec_body context_mod_arg
116 book_block: "\book" '{' book_body '}'
117 book_body: %empty
118 | BOOK_IDENTIFIER
119 | book_body paper_block
120 | book_body bookpart_block
121 | book_body score_block
122 | book_body composite_music
123 | book_body full_markup
124 | book_body full_markup_list
125 | book_body SCM_TOKEN
126 | book_body embedded_scm_active
128 | book_body lilypond_header
129 | book_body error
130 bookpart_block: "\bookpart" '{' bookpart_body '}'
131 bookpart_body: %empty
132 | BOOK_IDENTIFIER
133 | bookpart_body paper_block
134 | bookpart_body score_block
135 | bookpart_body composite_music
136 | bookpart_body full_markup
137 | bookpart_body full_markup_list
138 | bookpart_body SCM_TOKEN
139 | bookpart_body embedded_scm_active
141 | bookpart_body lilypond_header
142 | bookpart_body error
143 score_block: "\score" '{' score_body '}'
144 score_body: score_items
145 | score_body error
146 score_item: embedded_scm
147 | music
148 | output_def
149 score_items: %empty
150 | score_items score_item
152 | score_items lilypond_header
153 paper_block: output_def
154 output_def: output_def_body '}'
155 output_def_head: "\paper"
156 | "\midi"
157 | "\layout"
158 output_def_head_with_mode_switch: output_def_head
159 music_or_context_def: music_assign
160 | context_def_spec_block
161 output_def_body: output_def_head_with_mode_switch '{'
162 | output_def_body assignment
163 | output_def_body embedded_scm_active
164 | output_def_body SCM_TOKEN
166 | output_def_body music_or_context_def
167 | output_def_body error
168 tempo_event: "\tempo" steno_duration '=' tempo_range
169 | "\tempo" text steno_duration '=' tempo_range
170 | "\tempo" text
171 music_list: %empty
172 | music_list music_embedded
173 | music_list error
174 braced_music_list: '{' music_list '}'
175 music: music_assign
176 | lyric_element_music
177 | pitch_as_music
178 pitch_as_music: pitch_or_music
179 music_embedded: music
180 | post_event
181 | music_embedded_backup
182 | music_embedded_backup
"(backed-up?)"
lyric_element_music
183 | multiplied_duration post_events
184 music_embedded_backup: embedded_scm
185 music_assign: simple_music
186 | composite_music
187 repeated_music: "\repeat" simple_string unsigned_number music
188 | "\repeat"
simple_string
unsigned_number
music
"\alternative"
braced_music_list
189 sequential_music: "\sequential" braced_music_list
190 | braced_music_list
191 simultaneous_music: "\simultaneous" braced_music_list
192 | "<<" music_list ">>"
193 simple_music: event_chord
194 | music_property_def
195 | context_change
197 context_modification: "\with" '{' context_mod_list '}'
198 | "\with" context_modification_arg
199 context_modification_arg: embedded_scm
200 | MUSIC_IDENTIFIER
201 optional_context_mods: context_modification_mods_list
202 context_modification_mods_list: %empty
203 | context_modification_mods_list
context_modification
204 context_mod_list: %empty
205 | context_mod_list context_mod
206 | context_mod_list context_mod_arg
207 context_prefix: "\context" symbol optional_id optional_context_mods
208 | "\new" symbol optional_id optional_context_mods
209 new_lyrics: "\addlyrics" optional_context_mods lyric_mode_music
210 | new_lyrics
"\addlyrics"
optional_context_mods
lyric_mode_music
211 basic_music: music_function_call
212 | repeated_music
213 | music_bare
214 | "\lyricsto" simple_string lyric_mode_music
215 | "\lyricsto" symbol '=' simple_string lyric_mode_music
216 contextable_music: basic_music
217 | pitch_as_music
218 | event_chord
219 contexted_basic_music: context_prefix contextable_music new_lyrics
220 | context_prefix contextable_music
221 | context_prefix contexted_basic_music
222 composite_music: basic_music
223 | contexted_basic_music
224 | basic_music new_lyrics
225 music_bare: mode_changed_music
226 | MUSIC_IDENTIFIER
227 | grouped_music_list
228 grouped_music_list: simultaneous_music
229 | sequential_music
230 symbol_list_arg: SYMBOL_LIST
231 | SYMBOL_LIST '.' symbol_list_rev
232 | SYMBOL_LIST ',' symbol_list_rev
233 symbol_list_rev: symbol_list_part
234 | symbol_list_rev '.' symbol_list_part
235 | symbol_list_rev ',' symbol_list_part
236 symbol_list_part: symbol_list_part_bare
237 | embedded_scm_bare
238 symbol_list_element: STRING
239 | UNSIGNED
240 symbol_list_part_bare: SYMBOL
241 | symbol_list_element
242 function_arglist_nonbackup: function_arglist_common
243 | "optional?"
"scheme?"
function_arglist_nonbackup
post_event_nofinger
244 | "optional?"
"scheme?"
function_arglist_nonbackup
'-'
UNSIGNED
245 | "optional?"
"scheme?"
function_arglist_nonbackup
'-'
REAL
246 | "optional?"
"scheme?"
function_arglist_nonbackup
'-'
NUMBER_IDENTIFIER
247 | "optional?"
"scheme?"
function_arglist_nonbackup
embedded_scm_arg
248 | "optional?"
"scheme?"
function_arglist_nonbackup
bare_number_common
249 | function_arglist_nonbackup_reparse
"(reparsed?)"
pitch_or_music
250 | function_arglist_nonbackup_reparse
"(reparsed?)"
multiplied_duration
251 | function_arglist_nonbackup_reparse
"(reparsed?)"
reparsed_rhythm
252 | function_arglist_nonbackup_reparse
"(reparsed?)"
bare_number_common
253 | function_arglist_nonbackup_reparse
"(reparsed?)"
SCM_ARG
254 | function_arglist_nonbackup_reparse
"(reparsed?)"
lyric_element_music
255 | function_arglist_nonbackup_reparse
"(reparsed?)"
symbol_list_arg
256 reparsed_rhythm: DURATION_ARG dots multipliers post_events
257 function_arglist_nonbackup_reparse: "optional?"
"scheme?"
function_arglist_nonbackup
SCM_IDENTIFIER
258 | "optional?"
"scheme?"
function_arglist_nonbackup
pitch
259 | "optional?"
"scheme?"
function_arglist_nonbackup
steno_tonic_pitch
260 | "optional?"
"scheme?"
function_arglist_nonbackup
STRING
261 | "optional?"
"scheme?"
function_arglist_nonbackup
SYMBOL
262 | "optional?"
"scheme?"
function_arglist_nonbackup
full_markup
263 | "optional?"
"scheme?"
function_arglist_nonbackup
UNSIGNED
264 | "optional?"
"scheme?"
function_arglist_nonbackup
DURATION_IDENTIFIER
265 function_arglist_backup: function_arglist_common
266 | "optional?"
"scheme?"
function_arglist_backup
embedded_scm_arg
267 | "optional?"
"scheme?"
function_arglist_backup
post_event_nofinger
268 | "optional?"
"scheme?"
function_arglist_backup
pitch
269 | "optional?"
"scheme?"
function_arglist_backup
steno_tonic_pitch
270 | "optional?"
"scheme?"
function_arglist_backup
full_markup
271 | "optional?"
"scheme?"
function_arglist_backup
UNSIGNED
272 | "optional?"
"scheme?"
function_arglist_backup
REAL
273 | "optional?"
"scheme?"
function_arglist_backup
NUMBER_IDENTIFIER
274 | "optional?"
"scheme?"
function_arglist_backup
'-'
UNSIGNED
275 | "optional?"
"scheme?"
function_arglist_backup
'-'
REAL
276 | "optional?"
"scheme?"
function_arglist_backup
'-'
NUMBER_IDENTIFIER
277 | "optional?"
"scheme?"
function_arglist_backup
DURATION_IDENTIFIER
278 | "optional?"
"scheme?"
function_arglist_backup
SCM_IDENTIFIER
279 | "optional?"
"scheme?"
function_arglist_backup
STRING
280 | "optional?"
"scheme?"
function_arglist_backup
SYMBOL
281 | function_arglist_backup
"(reparsed?)"
pitch_or_music
282 | function_arglist_backup
"(reparsed?)"
bare_number_common
283 | function_arglist_backup
"(reparsed?)"
multiplied_duration
284 | function_arglist_backup
"(reparsed?)"
reparsed_rhythm
285 | function_arglist_backup
"(reparsed?)"
symbol_list_arg
286 function_arglist: function_arglist_nonbackup
287 | "optional?"
"scheme?"
function_arglist_skip_nonbackup
"\default"
288 function_arglist_skip_nonbackup: function_arglist_nonbackup
289 | "optional?"
"scheme?"
function_arglist_skip_nonbackup
290 function_arglist_partial: "scheme?" function_arglist_optional
291 | "scheme?" function_arglist_partial_optional
292 | "optional?"
"scheme?"
function_arglist_nonbackup
293 | "optional?"
"scheme?"
function_arglist_partial
294 function_arglist_partial_optional: "scheme?" function_arglist_optional
295 | "scheme?"
function_arglist_partial_optional
296 | "optional?"
"scheme?"
function_arglist_backup
297 | "optional?"
"scheme?"
function_arglist_partial_optional
298 function_arglist_common: EXPECT_NO_MORE_ARGS
299 | "scheme?"
function_arglist_optional
embedded_scm_arg
300 | "scheme?"
function_arglist_optional
bare_number_common
301 | "scheme?"
function_arglist_optional
post_event_nofinger
302 | "scheme?"
function_arglist_optional
'-'
NUMBER_IDENTIFIER
303 | function_arglist_common_reparse
"(reparsed?)"
SCM_ARG
304 | function_arglist_common_reparse
"(reparsed?)"
lyric_element_music
305 | function_arglist_common_reparse
"(reparsed?)"
pitch_or_music
306 | function_arglist_common_reparse
"(reparsed?)"
bare_number_common
307 | function_arglist_common_reparse
"(reparsed?)"
multiplied_duration
308 | function_arglist_common_reparse
"(reparsed?)"
reparsed_rhythm
309 | function_arglist_common_reparse
"(reparsed?)"
symbol_list_arg
310 function_arglist_common_reparse: "scheme?"
function_arglist_optional
SCM_IDENTIFIER
311 | "scheme?"
function_arglist_optional
pitch
312 | "scheme?"
function_arglist_optional
steno_tonic_pitch
313 | "scheme?"
function_arglist_optional
STRING
314 | "scheme?"
function_arglist_optional
SYMBOL
315 | "scheme?"
function_arglist_optional
full_markup
316 | "scheme?"
function_arglist_optional
UNSIGNED
317 | "scheme?"
function_arglist_optional
DURATION_IDENTIFIER
318 | "scheme?"
function_arglist_optional
'-'
UNSIGNED
319 | "scheme?"
function_arglist_optional
'-'
REAL
320 function_arglist_optional: function_arglist_backup
321 | "optional?"
"scheme?"
function_arglist_skip_backup
"\default"
322 | function_arglist_skip_backup "(backed-up?)"
323 function_arglist_skip_backup: function_arglist_backup
324 | "optional?"
"scheme?"
function_arglist_skip_backup
325 music_function_call: MUSIC_FUNCTION function_arglist
326 optional_id: %empty
327 | '=' simple_string
329 lyric_mode_music: grouped_music_list
330 | MUSIC_IDENTIFIER
331 mode_changed_music: mode_changing_head grouped_music_list
332 | mode_changing_head_with_context
optional_context_mods
grouped_music_list
333 mode_changing_head: "\notemode"
334 | "\drummode"
335 | "\figuremode"
336 | "\chordmode"
337 | "\lyricmode"
338 mode_changing_head_with_context: "\drums"
339 | "\figures"
340 | "\chords"
341 | "\lyrics"
342 context_change: "\change" symbol '=' simple_string
343 property_path: symbol_list_rev
344 property_operation: symbol '=' scalar
345 | "\unset" symbol
346 | "\override" revert_arg '=' scalar
347 | "\revert" revert_arg
348 revert_arg: revert_arg_backup "(backed-up?)" symbol_list_arg
349 revert_arg_backup: revert_arg_part
350 revert_arg_part: symbol_list_part
351 | revert_arg_backup
"(backed-up?)"
SCM_ARG
'.'
symbol_list_part
352 | revert_arg_backup
"(backed-up?)"
SCM_ARG
','
symbol_list_part
353 | revert_arg_backup
"(backed-up?)"
SCM_ARG
symbol_list_part
354 context_def_mod: "\consists"
355 | "\remove"
356 | "\accepts"
357 | "\defaultchild"
358 | "\denies"
359 | "\alias"
360 | "\type"
361 | "\description"
362 | "\name"
363 context_mod: property_operation
364 | context_def_mod STRING
365 | context_def_mod SYMBOL
366 | context_def_mod embedded_scm
367 grob_prop_spec: symbol_list_rev
368 grob_prop_path: grob_prop_spec
369 | grob_prop_spec property_path
370 context_prop_spec: symbol_list_rev
371 simple_revert_context: symbol_list_part
372 music_property_def: "\override" grob_prop_path '=' scalar
373 | "\revert" simple_revert_context revert_arg
374 | "\set" context_prop_spec '=' scalar
375 | "\unset" context_prop_spec
376 string: STRING
377 | SYMBOL
378 | full_markup
379 text: STRING
380 | SYMBOL
381 | full_markup
382 | embedded_scm_bare
383 simple_string: STRING
384 | SYMBOL
385 | embedded_scm_bare
386 symbol: STRING
387 | SYMBOL
388 | embedded_scm_bare
389 scalar: embedded_scm_arg
390 | pitch_or_music
391 | SCM_IDENTIFIER
392 | bare_number
393 | '-' bare_number
394 | string
395 | symbol_list_part_bare '.' property_path
396 | symbol_list_part_bare ',' property_path
397 event_chord: simple_element post_events
398 | CHORD_REPETITION optional_notemode_duration post_events
399 | MULTI_MEASURE_REST optional_notemode_duration post_events
400 | tempo_event
401 | note_chord_element
402 note_chord_element: chord_body optional_notemode_duration post_events
403 chord_body: "<" chord_body_elements ">"
404 | FIGURE_OPEN figure_list FIGURE_CLOSE
405 chord_body_elements: %empty
406 | chord_body_elements chord_body_element
407 chord_body_element: pitch_or_tonic_pitch
exclamations
questions
octave_check
post_events
408 | DRUM_PITCH post_events
409 | music_function_chord_body
410 | post_event
411 music_function_chord_body: music_function_call
412 | MUSIC_IDENTIFIER
413 | embedded_scm
414 event_function_event: EVENT_FUNCTION function_arglist
415 post_events: %empty
416 | post_events post_event
417 post_event_nofinger: direction_less_event
418 | script_dir music_function_call
419 | "--"
420 | "__"
421 | script_dir direction_reqd_event
422 | script_dir direction_less_event
423 | '^' fingering
424 | '_' fingering
425 post_event: post_event_nofinger
426 | '-' fingering
427 string_number_event: E_UNSIGNED
428 direction_less_event: string_number_event
429 | EVENT_IDENTIFIER
430 | tremolo_type
431 | event_function_event
432 direction_reqd_event: gen_text_def
433 | script_abbreviation
434 octave_check: %empty
435 | '=' quotes
436 quotes: %empty
437 | sub_quotes
438 | sup_quotes
439 erroneous_quotes: quotes
440 sup_quotes: '\''
441 | sup_quotes '\''
442 sub_quotes: ','
443 | sub_quotes ','
444 steno_pitch: NOTENAME_PITCH quotes
445 steno_tonic_pitch: TONICNAME_PITCH quotes
446 pitch: steno_pitch
447 | PITCH_IDENTIFIER quotes
448 pitch_or_tonic_pitch: pitch
449 | steno_tonic_pitch
450 gen_text_def: full_markup
451 | STRING
452 | SYMBOL
453 | embedded_scm
454 fingering: UNSIGNED
455 script_abbreviation: '^'
456 | '+'
457 | '-'
458 | '!'
459 | ">"
460 | '.'
461 | '_'
462 script_dir: '_'
463 | '^'
464 | '-'
465 maybe_notemode_duration: %empty
466 | multiplied_duration
467 optional_notemode_duration: maybe_notemode_duration
468 steno_duration: UNSIGNED dots
469 | DURATION_IDENTIFIER dots
470 multiplied_duration: steno_duration multipliers
471 dots: %empty
472 | dots '.'
473 multipliers: %empty
474 | multipliers '*' UNSIGNED
475 | multipliers '*' FRACTION
476 tremolo_type: ':'
477 | ':' UNSIGNED
478 bass_number: UNSIGNED
479 | STRING
480 | SYMBOL
481 | full_markup
482 | embedded_scm_bare
483 figured_bass_alteration: '-'
484 | '+'
485 | '!'
486 bass_figure: "_"
487 | bass_number
488 | bass_figure ']'
489 | bass_figure figured_bass_alteration
490 | bass_figure figured_bass_modification
491 figured_bass_modification: "\+"
492 | "\!"
493 | '/'
494 | "\\"
495 br_bass_figure: bass_figure
496 | '[' bass_figure
497 figure_list: %empty
498 | figure_list br_bass_figure
499 optional_rest: %empty
500 | "\rest"
501 pitch_or_music: pitch
exclamations
questions
octave_check
maybe_notemode_duration
erroneous_quotes
optional_rest
post_events
502 | new_chord post_events
503 simple_element: DRUM_PITCH optional_notemode_duration
504 | RESTNAME optional_notemode_duration
505 lyric_element: full_markup
506 | SYMBOL
507 | STRING
508 | LYRIC_ELEMENT
509 lyric_element_music: lyric_element
optional_notemode_duration
post_events
510 new_chord: steno_tonic_pitch maybe_notemode_duration
511 | steno_tonic_pitch
optional_notemode_duration
chord_separator
chord_items
512 chord_items: %empty
513 | chord_items chord_item
514 chord_separator: ":"
515 | "^"
516 | "/" steno_tonic_pitch
517 | "/+" steno_tonic_pitch
518 chord_item: chord_separator
519 | step_numbers
520 | CHORD_MODIFIER
521 step_numbers: step_number
522 | step_numbers '.' step_number
523 step_number: UNSIGNED
524 | UNSIGNED '+'
525 | UNSIGNED "-"
526 tempo_range: unsigned_number
527 | unsigned_number '-' unsigned_number
528 number_expression: number_expression '+' number_term
529 | number_expression '-' number_term
530 | number_term
531 number_term: number_factor
532 | number_factor '*' number_factor
533 | number_factor '/' number_factor
534 number_factor: '-' number_factor
535 | bare_number
536 bare_number_common: REAL
537 | NUMBER_IDENTIFIER
538 | REAL NUMBER_IDENTIFIER
539 bare_number: bare_number_common
540 | UNSIGNED
541 | UNSIGNED NUMBER_IDENTIFIER
542 unsigned_number: UNSIGNED
543 | NUMBER_IDENTIFIER
544 | embedded_scm
545 exclamations: %empty
546 | exclamations '!'
547 questions: %empty
548 | questions '?'
550 full_markup_list: "\markuplist" markup_list
551 markup_mode: "\markup"
552 markup_mode_word: markup_mode markup_word
553 full_markup: markup_mode markup_top
554 | markup_mode_word
555 partial_markup: markup_mode markup_partial_function "\etc"
556 markup_top: markup_list
557 | markup_head_1_list simple_markup
558 | simple_markup_noword
560 markup_scm: embedded_scm "(backed-up?)"
561 markup_list: markup_composed_list
562 | markup_uncomposed_list
563 markup_uncomposed_list: markup_braced_list
564 | markup_command_list
565 | markup_scm MARKUPLIST_IDENTIFIER
567 | "\score-lines" '{' score_body '}'
568 markup_composed_list: markup_head_1_list markup_uncomposed_list
569 markup_braced_list: '{' markup_braced_list_body '}'
570 markup_braced_list_body: %empty
571 | markup_braced_list_body markup
572 | markup_braced_list_body markup_list
573 markup_command_list: MARKUP_LIST_FUNCTION markup_command_list_arguments
574 markup_command_basic_arguments: "markup-list?"
markup_command_list_arguments
markup_list
575 | "scheme?"
markup_command_list_arguments
embedded_scm
576 | "scheme?"
markup_command_list_arguments
STRING
577 | EXPECT_NO_MORE_ARGS
578 markup_command_list_arguments: markup_command_basic_arguments
579 | "markup?"
markup_command_list_arguments
markup
580 markup_partial_function: MARKUP_FUNCTION markup_arglist_partial
581 | markup_head_1_list
MARKUP_FUNCTION
markup_arglist_partial
582 markup_arglist_partial: "markup?" markup_arglist_partial
583 | "scheme?" markup_arglist_partial
584 | "markup?" markup_command_list_arguments
585 | "scheme?" markup_command_list_arguments
586 markup_head_1_item: MARKUP_FUNCTION
"markup?"
markup_command_list_arguments
587 markup_head_1_list: markup_head_1_item
588 | markup_head_1_list markup_head_1_item
589 markup_word: STRING
590 | SYMBOL
591 simple_markup: markup_word
592 | simple_markup_noword
594 simple_markup_noword: "\score" '{' score_body '}'
595 | MARKUP_FUNCTION markup_command_basic_arguments
596 | markup_scm MARKUP_IDENTIFIER
597 markup: markup_head_1_list simple_markup
598 | simple_markup
Terminals, with rules where they appear
"#{" (340) 3
"(backed-up?)" (335) 182 322 348 351 352 353 560
"(reparsed?)" (336) 249 250 251 252 253 254 255 281 282 283 284 285
303 304 305 306 307 308 309
"-" (320) 525
"--" (268) 419
"/" (321) 516
"/+" (317) 517
":" (319) 514
"<" (322) 403
"<<" (324) 192
">" (323) 403 459
">>" (325) 192
"\!" (327) 492
"\+" (328) 491
"\\" (326) 494
"\accepts" (273) 356
"\addlyrics" (262) 209 210
"\alias" (274) 359
"\alternative" (260) 188
"\book" (275) 116
"\bookpart" (276) 130
"\change" (277) 342
"\chordmode" (278) 336
"\chords" (279) 340
"\consists" (280) 354
"\context" (281) 108 207
"\default" (282) 287 321
"\defaultchild" (283) 357
"\denies" (284) 358
"\description" (285) 361
"\drummode" (286) 334
"\drums" (287) 338
"\etc" (288) 90 555
"\figuremode" (289) 335
"\figures" (290) 339
"\header" (291) 62
"\layout" (293) 157
"\lyricmode" (294) 337
"\lyrics" (295) 341
"\lyricsto" (296) 214 215
"\markup" (297) 551
"\markuplist" (298) 550
"\midi" (299) 156
"\name" (300) 362
"\new" (316) 208
"\notemode" (301) 333
"\override" (302) 101 103 346 372
"\paper" (303) 155
"\remove" (304) 355
"\repeat" (259) 187 188
"\rest" (305) 500
"\revert" (306) 347 373
"\score" (307) 143 594
"\score-lines" (308) 567
"\sequential" (309) 189
"\set" (310) 102 104 374
"\simultaneous" (311) 191
"\tempo" (312) 168 169 170
"\type" (313) 360
"\unset" (314) 345 375
"\version-error" (292) 8 57
"\with" (315) 197 198
"^" (318) 515
"_" (331) 486
"__" (269) 420
"end of input" (0) 0
"markup-list?" (337) 574
"markup?" (333) 579 582 584 586
"optional?" (338) 97 98 99 243 244 245 246 247 248 257 258 259 260
261 262 263 264 266 267 268 269 270 271 272 273 274 275 276 277
278 279 280 287 289 292 293 296 297 321 324
"scheme?" (334) 94 95 96 97 98 99 243 244 245 246 247 248 257 258 259
260 261 262 263 264 266 267 268 269 270 271 272 273 274 275 276
277 278 279 280 287 289 290 291 292 293 294 295 296 297 299 300
301 302 310 311 312 313 314 315 316 317 318 319 321 324 575 576
583 585
'!' (33) 458 485 546
'*' (42) 474 475 532
'+' (43) 456 484 524 528
',' (44) 69 74 232 235 352 396 442 443
'-' (45) 47 244 245 246 274 275 276 302 318 319 393 426 457 464 483
527 529 534
'.' (46) 21 68 73 231 234 351 395 460 472 522
'/' (47) 493 533
':' (58) 476 477
'=' (61) 67 68 69 70 101 102 103 104 168 169 215 327 342 344 346 372
374 435
'?' (63) 548
'[' (91) 496
'\'' (39) 440 441
']' (93) 488
'^' (94) 423 455 463
'_' (95) 424 461 462
'{' (123) 62 108 116 130 143 161 174 197 567 569 594
'}' (125) 62 108 116 130 143 154 174 197 567 569 594
BOOK_IDENTIFIER (341) 12 118 132
CHORD_MODIFIER (342) 520
CHORD_REPETITION (343) 398
COMPOSITE (261)
DRUM_PITCH (344) 408 503
DURATION_ARG (345) 256
DURATION_IDENTIFIER (270) 264 277 317 469
E_UNSIGNED (265) 427
error (256) 7 56 129 142 145 167 173
EVENT_FUNCTION (267) 92 95 98 414
EVENT_IDENTIFIER (266) 429
EXPECT_NO_MORE_ARGS (339) 298 577
FIGURE_CLOSE (329) 404
FIGURE_OPEN (330) 404
FRACTION (346) 29 84 475
LOOKUP_IDENTIFIER (347) 20 21
LYRIC_ELEMENT (348) 508
MARKUP_FUNCTION (349) 580 581 586 595
MARKUP_IDENTIFIER (351) 596
MARKUP_LIST_FUNCTION (350) 573
MARKUPLIST_IDENTIFIER (352) 565
MULTI_MEASURE_REST (332) 399
MUSIC_FUNCTION (353) 91 94 97 325
MUSIC_IDENTIFIER (354) 200 226 330 412
NOTENAME_PITCH (355) 444
NUMBER_IDENTIFIER (271) 49 246 273 276 302 537 538 541 543
PITCH_IDENTIFIER (356) 447
PREC_BOT (258)
PREC_TOP (272)
REAL (264) 245 272 275 319 536 538
RESTNAME (357) 504
SCM_ARG (358) 27 253 303 351 352 353
SCM_FUNCTION (359) 46 93 96 99
SCM_IDENTIFIER (360) 23 24 257 278 310 391
SCM_TOKEN (361) 17 22 28 60 125 138 164
STRING (362) 65 238 260 279 313 364 376 379 383 386 451 479 507 576
589
SYMBOL (365) 66 240 261 280 314 365 377 380 384 387 452 480 506 590
SYMBOL_LIST (363) 230 231 232
TONICNAME_PITCH (364) 445
UNARY_MINUS (366)
UNSIGNED (263) 49 239 244 263 271 274 316 318 454 468 474 477 478 523
524 525 540 541 542
Nonterminals, with rules where they appear
assignment (148)
on left: 67 68 69 70, on right: 6 59 162
assignment_id (147)
on left: 65 66, on right: 67 68 69
bare_number (298)
on left: 539 540 541, on right: 392 393 535
bare_number_common (297)
on left: 536 537 538, on right: 48 248 252 282 300 306 539
basic_music (195)
on left: 211 212 213 214 215, on right: 216 222 224
bass_figure (278)
on left: 486 487 488 489 490, on right: 488 489 490 495 496
bass_number (276)
on left: 478 479 480 481 482, on right: 487
book_block (157)
on left: 116, on right: 10 36 78
book_body (158)
on left: 117 118 119 120 121 122 123 124 125 126 128 129, on right:
116 119 120 121 122 123 124 125 126 128 129
bookpart_block (160)
on left: 130, on right: 11 37 79 120
bookpart_body (161)
on left: 131 132 133 134 135 136 137 138 139 141 142, on right:
130 133 134 135 136 137 138 139 141 142
br_bass_figure (280)
on left: 495 496, on right: 498
braced_music_list (177)
on left: 174, on right: 188 189 190 191
chord_body (245)
on left: 403 404, on right: 402
chord_body_element (247)
on left: 407 408 409 410, on right: 406
chord_body_elements (246)
on left: 405 406, on right: 403 406
chord_item (290)
on left: 518 519 520, on right: 513
chord_items (288)
on left: 512 513, on right: 511 513
chord_separator (289)
on left: 514 515 516 517, on right: 511 518
composite_music (198)
on left: 222 223 224, on right: 14 111 122 135 186
context_change (225)
on left: 342, on right: 195
context_def_mod (231)
on left: 354 355 356 357 358 359 360 361 362, on right: 364 365
366
context_def_spec_block (153)
on left: 108, on right: 35 81 160
context_def_spec_body (156)
on left: 112 113 114 115, on right: 108 113 114 115
context_mod (232)
on left: 363 364 365 366, on right: 113 205
context_mod_arg (154)
on left: 109 111, on right: 115 206
context_mod_list (192)
on left: 204 205 206, on right: 197 205 206
context_modification (187)
on left: 197 198, on right: 32 89 114 203
context_modification_arg (189)
on left: 199 200, on right: 198
context_modification_mods_list (191)
on left: 202 203, on right: 201 203
context_prefix (193)
on left: 207 208, on right: 219 220 221
context_prop_spec (235)
on left: 370, on right: 102 104 374 375
contextable_music (196)
on left: 216 217 218, on right: 219 220
contexted_basic_music (197)
on left: 219 220 221, on right: 221 223
direction_less_event (254)
on left: 428 429 430 431, on right: 417 422
direction_reqd_event (255)
on left: 432 433, on right: 421
dots (273)
on left: 471 472, on right: 256 468 469 472
embedded_lilypond (142)
on left: 50 51 52 53 54 55 56 57, on right: 3 57
embedded_lilypond_number (141)
on left: 47 48 49, on right: 47 52
embedded_scm (138)
on left: 40 41 42, on right: 86 109 146 184 199 366 413 453 544
560 575
embedded_scm_active (136)
on left: 24 25 26, on right: 18 61 126 139 163
embedded_scm_arg (139)
on left: 43 44 45, on right: 247 266 299 389
embedded_scm_bare (135)
on left: 22 23, on right: 40 237 382 385 388 482
embedded_scm_bare_arg (137)
on left: 27 28 29 30 31 32 33 34 35 36 37 38 39, on right: 43
erroneous_quotes (258)
on left: 439, on right: 501
event_chord (243)
on left: 397 398 399 400 401, on right: 193 218
event_function_event (249)
on left: 414, on right: 431
exclamations (300)
on left: 545 546, on right: 407 501 546
figure_list (281)
on left: 497 498, on right: 404 498
figured_bass_alteration (277)
on left: 483 484 485, on right: 489
figured_bass_modification (279)
on left: 491 492 493 494, on right: 490
fingering (266)
on left: 454, on right: 423 424 426
full_markup (306)
on left: 553 554, on right: 15 123 136 262 270 315 378 381 450
481 505
full_markup_list (302)
on left: 550, on right: 16 31 88 124 137
function_arglist (210)
on left: 286 287, on right: 46 325 414
function_arglist_backup (209)
on left: 265 266 267 268 269 270 271 272 273 274 275 276 277 278
279 280 281 282 283 284 285, on right: 266 267 268 269 270 271
272 273 274 275 276 277 278 279 280 281 282 283 284 285 296 320
323
function_arglist_common (214)
on left: 298 299 300 301 302 303 304 305 306 307 308 309, on right:
242 265
function_arglist_common_reparse (215)
on left: 310 311 312 313 314 315 316 317 318 319, on right: 303
304 305 306 307 308 309
function_arglist_nonbackup (206)
on left: 242 243 244 245 246 247 248 249 250 251 252 253 254 255,
on right: 97 98 99 243 244 245 246 247 248 257 258 259 260 261
262 263 264 286 288 292
function_arglist_nonbackup_reparse (208)
on left: 257 258 259 260 261 262 263 264, on right: 249 250 251
252 253 254 255
function_arglist_optional (216)
on left: 320 321 322, on right: 94 95 96 290 294 299 300 301 302
310 311 312 313 314 315 316 317 318 319
function_arglist_partial (212)
on left: 290 291 292 293, on right: 91 92 93 293
function_arglist_partial_optional (213)
on left: 294 295 296 297, on right: 291 295 297
function_arglist_skip_backup (217)
on left: 323 324, on right: 321 322 324
function_arglist_skip_nonbackup (211)
on left: 288 289, on right: 287 289
gen_text_def (265)
on left: 450 451 452 453, on right: 432
grob_prop_path (234)
on left: 368 369, on right: 101 103 372
grob_prop_spec (233)
on left: 367, on right: 368 369
grouped_music_list (200)
on left: 228 229, on right: 227 329 331 332
header_block (145)
on left: 64, on right: 9 33 76
identifier_init (149)
on left: 71 72 73 74 75, on right: 67 68 69 70
identifier_init_nonumber (150)
on left: 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90, on right:
51 71
lilypond (132)
on left: 4 5 6 7 8, on right: 1 5 6 7 8
lilypond_header (144)
on left: 62, on right: 64 128 141 152
lilypond_header_body (143)
on left: 58 59 60 61, on right: 59 60 61 62
lookup (134)
on left: 20 21, on right: 26 39 42
lyric_element (285)
on left: 505 506 507 508, on right: 509
lyric_element_music (286)
on left: 509, on right: 176 182 254 304
lyric_mode_music (220)
on left: 329 330, on right: 209 210 214 215
markup (328)
on left: 597 598, on right: 571 579
markup_arglist_partial (321)
on left: 582 583 584 585, on right: 580 581 582 583
markup_braced_list (315)
on left: 569, on right: 563
markup_braced_list_body (316)
on left: 570 571 572, on right: 569 571 572
markup_command_basic_arguments (318)
on left: 574 575 576 577, on right: 578 595
markup_command_list (317)
on left: 573, on right: 564
markup_command_list_arguments (319)
on left: 578 579, on right: 573 574 575 576 579 584 585 586
markup_composed_list (314)
on left: 568, on right: 561
markup_head_1_item (322)
on left: 586, on right: 587 588
markup_head_1_list (323)
on left: 587 588, on right: 557 568 581 588 597
markup_list (311)
on left: 561 562, on right: 550 556 572 574
markup_mode (304)
on left: 551, on right: 105 552 553 555
markup_mode_word (305)
on left: 552, on right: 70 554
markup_partial_function (320)
on left: 580 581, on right: 105 555
markup_scm (309)
on left: 560, on right: 565 596
markup_top (308)
on left: 556 557 558, on right: 553
markup_uncomposed_list (312)
on left: 563 564 565 567, on right: 562 568
markup_word (324)
on left: 589 590, on right: 552 591
maybe_notemode_duration (269)
on left: 465 466, on right: 467 501 510
mode_changed_music (222)
on left: 331 332, on right: 225
mode_changing_head (223)
on left: 333 334 335 336 337, on right: 331
mode_changing_head_with_context (224)
on left: 338 339 340 341, on right: 332
multiplied_duration (272)
on left: 470, on right: 54 183 250 283 307 466
multipliers (274)
on left: 473 474 475, on right: 256 470 474 475
music (178)
on left: 175 176 177, on right: 147 179 187 188
music_assign (182)
on left: 185 186, on right: 45 82 159 175
music_bare (199)
on left: 225 226 227, on right: 213
music_embedded (180)
on left: 179 180 181 182 183, on right: 55 172
music_embedded_backup (181)
on left: 184, on right: 181 182
music_function_call (218)
on left: 325, on right: 211 411 418
music_function_chord_body (248)
on left: 411 412 413, on right: 409
music_list (176)
on left: 171 172 173, on right: 55 172 173 174 192
music_or_context_def (172)
on left: 159 160, on right: 166
music_property_def (237)
on left: 372 373 374 375, on right: 194
new_chord (287)
on left: 510 511, on right: 502
new_lyrics (194)
on left: 209 210, on right: 210 219 224
note_chord_element (244)
on left: 402, on right: 401
number_expression (294)
on left: 528 529 530, on right: 72 528 529
number_factor (296)
on left: 534 535, on right: 531 532 533 534
number_term (295)
on left: 531 532 533, on right: 528 529 530
octave_check (256)
on left: 434 435, on right: 407 501
optional_context_mods (190)
on left: 201, on right: 207 208 209 210 332
optional_id (219)
on left: 326 327, on right: 207 208
optional_notemode_duration (270)
on left: 467, on right: 398 399 402 503 504 509 511
optional_rest (282)
on left: 499 500, on right: 501
output_def (169)
on left: 154, on right: 19 38 80 148 153
output_def_body (173)
on left: 161 162 163 164 166 167, on right: 154 162 163 164 166
167
output_def_head (170)
on left: 155 156 157, on right: 158
output_def_head_with_mode_switch (171)
on left: 158, on right: 161
paper_block (168)
on left: 153, on right: 119 133
partial_function (152)
on left: 100 101 102 103 104 105 106 107, on right: 90 94 95 96
97 98 99 103 104
partial_function_scriptable (151)
on left: 91 92 93 94 95 96 97 98 99, on right: 100 106
partial_markup (307)
on left: 555, on right: 30 87
pitch (263)
on left: 446 447, on right: 258 268 311 448 501
pitch_as_music (179)
on left: 178, on right: 177 217
pitch_or_music (283)
on left: 501 502, on right: 83 178 249 281 305 390
pitch_or_tonic_pitch (264)
on left: 448 449, on right: 407
post_event (252)
on left: 425 426, on right: 53 180 410 416
post_event_nofinger (251)
on left: 417 418 419 420 421 422 423 424, on right: 75 243 267
301 425
post_events (250)
on left: 415 416, on right: 54 75 183 256 397 398 399 402 407 408
416 501 502 509
property_operation (227)
on left: 344 345 346 347, on right: 363
property_path (226)
on left: 343, on right: 68 69 73 74 369 395 396
questions (301)
on left: 547 548, on right: 407 501 548
quotes (257)
on left: 436 437 438, on right: 435 439 444 445 447
reparsed_rhythm (207)
on left: 256, on right: 251 284 308
repeated_music (183)
on left: 187 188, on right: 212
revert_arg (228)
on left: 348, on right: 346 347 373
revert_arg_backup (229)
on left: 349, on right: 348 351 352 353
revert_arg_part (230)
on left: 350 351 352 353, on right: 349
scalar (242)
on left: 389 390 391 392 393 394 395 396, on right: 344 346 372
374
scm_function_call (140)
on left: 46, on right: 25 41 44
score_block (163)
on left: 143, on right: 13 34 77 121 134
score_body (164)
on left: 144 145, on right: 143 145 567 594
score_item (165)
on left: 146 147 148, on right: 150
score_items (166)
on left: 149 150 152, on right: 144 150 152
script_abbreviation (267)
on left: 455 456 457 458 459 460 461, on right: 433
script_dir (268)
on left: 462 463 464, on right: 105 106 107 418 421 422
sequential_music (184)
on left: 189 190, on right: 229
simple_element (284)
on left: 503 504, on right: 397
simple_markup (325)
on left: 591 592, on right: 557 597 598
simple_markup_noword (326)
on left: 594 595 596, on right: 558 592
simple_music (186)
on left: 193 194 195, on right: 185
simple_revert_context (236)
on left: 371, on right: 373
simple_string (240)
on left: 383 384 385, on right: 187 188 214 215 327 342
simultaneous_music (185)
on left: 191 192, on right: 228
start_symbol (130)
on left: 1 3, on right: 0
steno_duration (271)
on left: 468 469, on right: 168 169 470
steno_pitch (261)
on left: 444, on right: 446
steno_tonic_pitch (262)
on left: 445, on right: 259 269 312 449 510 511 516 517
step_number (292)
on left: 523 524 525, on right: 521 522
step_numbers (291)
on left: 521 522, on right: 519 522
string (238)
on left: 376 377 378, on right: 85 394
string_number_event (253)
on left: 427, on right: 428
sub_quotes (260)
on left: 442 443, on right: 437 443
sup_quotes (259)
on left: 440 441, on right: 438 441
symbol (241)
on left: 386 387 388, on right: 207 208 215 342 344 345
symbol_list_arg (201)
on left: 230 231 232, on right: 255 285 309 348
symbol_list_element (204)
on left: 238 239, on right: 241
symbol_list_part (203)
on left: 236 237, on right: 233 234 235 350 351 352 353 371
symbol_list_part_bare (205)
on left: 240 241, on right: 73 74 236 395 396
symbol_list_rev (202)
on left: 233 234 235, on right: 21 231 232 234 235 343 367 370
tempo_event (175)
on left: 168 169 170, on right: 400
tempo_range (293)
on left: 526 527, on right: 168 169
text (239)
on left: 379 380 381 382, on right: 169 170
toplevel_expression (133)
on left: 9 10 11 12 13 14 15 16 17 18 19, on right: 5
tremolo_type (275)
on left: 476 477, on right: 430
unsigned_number (299)
on left: 542 543 544, on right: 187 188 526 527