Re: tremoli under beam

2024-03-30 Thread David Zelinsky
Werner LEMBERG  writes:

> Don't you want "\repeat tremolo 2" instead of 4?
>>>
>>> Thanks, yes, of course, but the result is still not correct, as
>>> you've found out.
>> 
>> Very much not correct!  This seems like a bug, no?
>
> Let's say it's not supported right now.  Filed as
>
>   https://gitlab.com/lilypond/lilypond/-/issues/6706
>
>
> Werner

I think that if adding a manual beam causes the output to be
musically/mathematically invalid, that should count as a bug.  If the
result is going to be nonsensical output, it should be an error, not
just a warning.  I guess I can add this comment to the issue.

-David



Re: tremoli under beam

2024-03-30 Thread Werner LEMBERG


 Don't you want "\repeat tremolo 2" instead of 4?
>>
>> Thanks, yes, of course, but the result is still not correct, as
>> you've found out.
> 
> Very much not correct!  This seems like a bug, no?

Let's say it's not supported right now.  Filed as

  https://gitlab.com/lilypond/lilypond/-/issues/6706


Werner



Re: tremoli under beam

2024-03-30 Thread David Zelinsky
Werner LEMBERG  writes:

   \repeat tremolo 4 { e32[ c! }
>>>
>>>
>>> Don't you want "\repeat tremolo 2" instead of 4?
>
> Thanks, yes, of course, but the result is still not correct, as you've
> found out.

Very much not correct!  This seems like a bug, no?  The output is not
only different from intended, it's just plain wrong.  Lilypond thinks
the duration is as specified, but that is not what the notation shows.
(Note that asking for manual beams on plain quarter notes elicits a
warning, but the beams are ignored and the output is at least valid.)


\relative c''' {
  \time 3/4

  a4 b c

  \repeat tremolo 4 { e32[ c! }
  \repeat tremolo 4 { es c }
  \repeat tremolo 4 { d b] }

  \repeat tremolo 2 { e32[ c! }
  \repeat tremolo 2 { es c] }
  \repeat tremolo 2 { e32[ c! }
  \repeat tremolo 2 { es c] }
  \repeat tremolo 2 { e32[ c! }
  \repeat tremolo 2 { es c] }

  a4[ b c]

}



-David


Re: tremoli under beam

2024-03-30 Thread Werner LEMBERG
>>>   \repeat tremolo 4 { e32[ c! }
>>
>>
>> Don't you want "\repeat tremolo 2" instead of 4?

Thanks, yes, of course, but the result is still not correct, as you've
found out.


Werner



Re: tremoli under beam

2024-03-30 Thread David Zelinsky
David Zelinsky  writes:

> Werner LEMBERG  writes:
>
>> Please have a look at the attached image (from the full score of
>> Stravinsky's Firebird, after rehearsal number 32).  How do I correctly
>> notate this in LilyPond?  AFAICS, there is no real support for that –
>> at least the 'most natural' way to notate it fails with warnings.  I
>> could only manage to write a work-around by not using tremoli.  It
>> seems that the `Chord_tremolo_engraver` is highjacking beams
>> completely...
>>
>>
>> Werner
>>
>>
>> ```
>> \markup "doesn't work"
>> \relative c''' {
>>   \repeat tremolo 4 { e32[ c! }
>>   \repeat tremolo 4 { es c }
>>   \repeat tremolo 4 { d b] }
>> }
>>
>> \markup "work-around"
>> \relative c''' {
>>   \set subdivideBeams = ##t
>>   \set minimumBeamSubdivisionInterval = \musicLength 8
>>   \override Beam.gap-count = 2
>>   e32*2[ c! es c d b]
>> }
>> ```
>
>
> Don't you want "\repeat tremolo 2" instead of 4?  Each tremolo pair is 
> supposed
> to be an 8th note in duration:  1/8 =  2 * (1/32 + 1/32).
>
> In your "doesn't work" versionm, if you omit the manual beams, it
> correctly typesets three quarter notes worth.
>
> With "tremolo 2" it works with the manual beams, but issues warnings
> "programming error: Stem already has beam".  I don't know whose
> "programming" that refers to.  Does it mean Lilypond has detected a bug
> in itself?
>
>
> \relative c''' {
>   \repeat tremolo 2 { e32[ c! }
>   \repeat tremolo 2 { es c }
>   \repeat tremolo 2 { d b] }
> }


Aargh!  Clearly I haven't had enough coffee today.  I still think it's
true that it should be "tremolo 2" -- and without the manual beams it is
typesets correctly though not beamed the way you want.  But the example
I showed with the manual beams is of course completely wrong!  It's not
tremolo.

Sorry to be so daft.

-David



Re: tremoli under beam

2024-03-30 Thread David Zelinsky
Werner LEMBERG  writes:

> Please have a look at the attached image (from the full score of
> Stravinsky's Firebird, after rehearsal number 32).  How do I correctly
> notate this in LilyPond?  AFAICS, there is no real support for that –
> at least the 'most natural' way to notate it fails with warnings.  I
> could only manage to write a work-around by not using tremoli.  It
> seems that the `Chord_tremolo_engraver` is highjacking beams
> completely...
>
>
> Werner
>
>
> ```
> \markup "doesn't work"
> \relative c''' {
>   \repeat tremolo 4 { e32[ c! }
>   \repeat tremolo 4 { es c }
>   \repeat tremolo 4 { d b] }
> }
>
> \markup "work-around"
> \relative c''' {
>   \set subdivideBeams = ##t
>   \set minimumBeamSubdivisionInterval = \musicLength 8
>   \override Beam.gap-count = 2
>   e32*2[ c! es c d b]
> }
> ```


Don't you want "\repeat tremolo 2" instead of 4?  Each tremolo pair is supposed
to be an 8th note in duration:  1/8 =  2 * (1/32 + 1/32).

In your "doesn't work" versionm, if you omit the manual beams, it
correctly typesets three quarter notes worth.

With "tremolo 2" it works with the manual beams, but issues warnings
"programming error: Stem already has beam".  I don't know whose
"programming" that refers to.  Does it mean Lilypond has detected a bug
in itself?


\relative c''' {
  \repeat tremolo 2 { e32[ c! }
  \repeat tremolo 2 { es c }
  \repeat tremolo 2 { d b] }
}




tremoli under beam

2024-03-30 Thread Werner LEMBERG

Please have a look at the attached image (from the full score of
Stravinsky's Firebird, after rehearsal number 32).  How do I correctly
notate this in LilyPond?  AFAICS, there is no real support for that –
at least the 'most natural' way to notate it fails with warnings.  I
could only manage to write a work-around by not using tremoli.  It
seems that the `Chord_tremolo_engraver` is highjacking beams
completely...


Werner


```
\markup "doesn't work"
\relative c''' {
  \repeat tremolo 4 { e32[ c! }
  \repeat tremolo 4 { es c }
  \repeat tremolo 4 { d b] }
}

\markup "work-around"
\relative c''' {
  \set subdivideBeams = ##t
  \set minimumBeamSubdivisionInterval = \musicLength 8
  \override Beam.gap-count = 2
  e32*2[ c! es c d b]
}
```