X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fparser.yy;h=c60c6ed64c1157fa00e516efdcd98b8cb9e9eb0b;hb=6c6255af1f9aba10ae794576b4a48e29b567cf64;hp=35d0aa48dc40cd46df5961780c6f8f2fab2d822e;hpb=626874c8eecfbeb04ca8ffec3fb78da48859b42f;p=lilypond.git diff --git a/lily/parser.yy b/lily/parser.yy index 35d0aa48dc..c60c6ed64c 100644 --- a/lily/parser.yy +++ b/lily/parser.yy @@ -3671,7 +3671,7 @@ full_markup: ; partial_markup: - markup_mode markup_head_1_list ETC + markup_mode markup_partial_function ETC { $$ = MAKE_SYNTAX (partial_markup, @2, $2); parser->lexer_->pop_state (); @@ -3789,6 +3789,37 @@ markup_command_list_arguments: } ; +markup_partial_function: + MARKUP_FUNCTION markup_arglist_partial + { + $$ = scm_list_1 (scm_cons ($1, scm_reverse_x ($2, SCM_EOL))); + } + | markup_head_1_list MARKUP_FUNCTION markup_arglist_partial + { + $$ = scm_cons (scm_cons ($2, scm_reverse_x ($3, SCM_EOL)), + $1); + } + ; + +markup_arglist_partial: + EXPECT_MARKUP markup_arglist_partial + { + $$ = $2; + } + | EXPECT_SCM markup_arglist_partial + { + $$= $2; + } + | EXPECT_MARKUP markup_command_list_arguments + { + $$ = $2; + } + | EXPECT_SCM markup_command_list_arguments + { + $$ = $2; + } + ; + markup_head_1_item: MARKUP_FUNCTION EXPECT_MARKUP markup_command_list_arguments { $$ = scm_cons ($1, scm_reverse_x ($3, SCM_EOL));