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