Michael Gerdau <m...@qata.de> writes:

>> > the following MWE triggers a barcheck failure. Is that intended or a bug?
>> > And if it is intended I'd like to understand the rationale.
>> > 
>> > %%%%%%%%%%%%%
>> > \version "2.21.0"
>> > { R1*3/4 s4 | }
>> > %%%%%%%%%%%%%
>> 
>> Hi Michael,
>> 
>> that’s intended: R is used for full/multi-measure rests; they start and 
>> end at bar lines. Therefore, R produces not only the rest but also bar 
>> checks.
>> 
>> Those rests always are printed centered in the measure. What would you 
>> expect from the code above?
>
> The use case is this
>
> %%%%%%%%%%%
> \version "2.21.0"
> { R1*3/4 s4^\markup "some markup" |}
> %%%%%%%%%%%
>
> Of course I could achieve that by
> %%%%%%%%%%%
> \version "2.21.0"
> { << { \oneVoice R1 } \\ { s2. s4^\markup "some markup" |} >> }
> %%%%%%%%%%%
> but that seems ugly and at least to me unnecessarily complicated.

Why would you use \\ for creating separate voices here?

At any rate, that sounds like you want \after

after =
#(define-music-function (delay ev main) (ly:duration? ly:music? ly:music?)
   #{ \context Bottom << { s$delay <> $ev } #main >> #})
   
And then you can write
{ \after 2. ^\markup "some markup" R1 | }

-- 
David Kastrup

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to