[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: No lyric extenders for RhythmicStaff if music comes from a variable
From: |
David Kastrup |
Subject: |
Re: No lyric extenders for RhythmicStaff if music comes from a variable |
Date: |
Tue, 27 Nov 2018 23:01:04 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
Aaron Hill <address@hidden> writes:
> On 2018-11-27 1:22 pm, Lukas-Fabian Moser wrote:
>
>> \version "2.19.80"
>>
>> Melodie = \relative g' {
>> g8 16 16 16 8.~ 4 r
>> }
>>
>> \new Staff \Melodie \addlyrics { Once there was a way __ }
>>
>> \new RhythmicStaff \Melodie \addlyrics { Once there was a way __ }
>>
>> \new Staff \relative g' { g8 16 16 16 8.~ 4 r } \addlyrics { Once
>> there was a way __ }
>>
>> \new RhythmicStaff \relative g' { g8 16 16 16 8.~ 4 r } \addlyrics {
>> Once there was a way __ }
>>
>> As can be seen, the second example does not contain the Lyric
>> extender. Why is this so, and how can I get it back? (True for 2.19.80
>> as well as not-so-current master from a few weeks/months ago.)
>
> Some curly braces seem to help:
>
> %%%%
> \new RhythmicStaff { \Melodie \addlyrics { Once there was a way __ } }
> %%%%
>
> Using \displayMusic shows that use of the variable versus the explicit
> \relative produces a different S-expression, but I am not sure where
> the fault lies.
I never managed to get the parser to group \addlyrics just with the
desired expressions. Operator priorities for shift/reduce conflict
resolution are hard to get right, and this is the major case where I did
not manage even though there are several issues and patches trying to
fix it.
--
David Kastrup