From cc5bab1baaba3259adb5452be429891bc3c08696 Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Sat, 16 Nov 2013 13:24:11 +0100 Subject: [PATCH] Let a PITCH_IDENTIFIER optionally be followed by octave modifiers This makes pitch identifiers more similar to note names. There is no point in keeping the distinction just for triggering syntax errors on music that has no sensible other interpretation. --- lily/parser.yy | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lily/parser.yy b/lily/parser.yy index 56fc77f99b..fec7bd8820 100644 --- a/lily/parser.yy +++ b/lily/parser.yy @@ -1680,7 +1680,8 @@ function_arglist_backup: { if (scm_is_true (scm_call_1 ($2, $4))) { - $$ = scm_cons ($4, $3); + MYREPARSE (@4, $2, PITCH_IDENTIFIER, $4); + $$ = $3; } else { $$ = scm_cons (loc_on_music (@3, $1), $3); MYBACKUP (PITCH_IDENTIFIER, $4, @4); @@ -2849,7 +2850,14 @@ steno_tonic_pitch: pitch: steno_pitch - | PITCH_IDENTIFIER + | PITCH_IDENTIFIER quotes { + if (!scm_is_eq (SCM_INUM0, $2)) + { + Pitch p = *unsmob_pitch ($1); + p = p.transposed (Pitch (scm_to_int ($2),0,0)); + $$ = p.smobbed_copy (); + } + } ; gen_text_def: -- 2.39.5