[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: parser.yy / grammar
From: |
David Kastrup |
Subject: |
Re: parser.yy / grammar |
Date: |
Wed, 25 Apr 2018 09:42:05 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
Knut Petersen <address@hidden> writes:
> Am 24.04.2018 um 21:16 schrieb David Kastrup:
>>
>>>
>>> \version "2.21.0"
>>>
>>> \score{ { c'2 } \addlyrics { Hi there } \layout
>>> {}}
>>> \score{ { c'2 } \addlyrics \displayLilyMusic { Hi there } \layout
>>> {}}
>>> \score{ { c'2 } \addlyrics { \displayLilyMusic { Hi there } } \layout
>>> {}}
>>> \score{ { c'2 2 } \addlyrics { Hi there } \layout
>>> {}}
>>> \score{ { c'2 2 } \addlyrics \displayLilyMusic { Hi there } \layout
>>> {}}
>>> \score{ { c'2 2 } \addlyrics { \displayLilyMusic { Hi there } } \layout
>>> {}}
>>> \score{ { c'2 2 2 } \addlyrics { Hi there } \layout
>>> {}}
>>> \score{ { c'2 2 2 } \addlyrics \displayLilyMusic { Hi there } \layout
>>> {}}
>>> \score{ { c'2 2 2 } \addlyrics { \displayLilyMusic { Hi there } } \layout
>>> {}}
>> Uh what? How is the output correct?
>>
>
> One, two, or three notes, lyrics as expected. See attached pdfs.
>
> To make things clear:
>
> * \displayLilyMusic is a music function, it never is acceptable to
> \addlyrics in the current version of lilypond
> * { \displayLilyMusic ... } is always acceptable because it is a
> grouped_music_list (but the current parser does not automatically
> force lyric state)
Nope? After \addlyrics there is forced lyric state. That's why a
grouped_music_list is required. It would be pointless to switch to
lyrics state for a MUSIC_IDENTIFIER since it does not parse differently.
At any rate, we don't implement "features" which we know to fail in a
number of cases because they cannot be done correctly. It takes an
inordinary amount of work fixing up after people who think "reliable" is
the enemy of "good enough".
--
David Kastrup