Re: Where is my tuplet bracket?

2023-10-17 Thread David Kastrup
Werner LEMBERG  writes:

>> \new Staff {
>>   \key c \minor
>>   < es' g' > < bes' d''~ >2. |
>>   \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
>>{ g'4 as'2 } >>
>>   < f' as' >4  |
>> }
>
> Looks like a bug, so please file a report.

The problem is that I don't know where to locate the bug.  The
difference appears to be that \voices creates a \context Staff wrapper
around the parallel construct.  I suspect that the idea is to help with
continuing voices, like if you compare the outputs of

{ << { \voiceOne e'2~ \oneVoice } \new Voice { \voiceTwo c'2 } >> e'2 }

{ \voices "",2 << { \voiceOne e'2~ \oneVoice } \\ c'2 >> e'2 }

The second clearly looks more sensible, but if you look closely, there
still isn't a tie, so the voice does not actually continue in this
situation.  So this situation still is not helped in any manner, and the
one thing \voices has over unadorned << \\ >> is that it takes named
contexts.

Clearly this discrepancy is worth removing; I just don't know right now
why it exists in the first place.  I must have been thinking something.™

Now independent from the two constructs differing by a \context Staff
wrapper (added in voicify-music in scm/music-functions.scm).

What is additionally puzzling is that either change is accomplished by
voicify-music, so why is one use affected and the other not?  Or does
this happen when voicify-music is applied multiple times (the second
time during scorification)?

All this appears mostly unrelated to \tuplet tripping over one but not
the other incantation.

-- 
David Kastrup



Re: Where is my tuplet bracket?

2023-10-16 Thread Werner LEMBERG


> \new Staff {
>   \key c \minor
>   < es' g' > < bes' d''~ >2. |
>   \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
> { g'4 as'2 } >>
>   < f' as' >4  |
> }

Looks like a bug, so please file a report.


Werner



Re: Where is my tuplet bracket?

2023-10-16 Thread David Kastrup
William Rehwinkel  writes:

>> On 10/16/23 19:09, David Kastrup wrote:
>>> William Rehwinkel  writes:
>>> 
 Dear David,

 This seems like an improper/unintended use of \tuplet.
>>> How so?
>>> How is
>>>\tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice }
>>> \\
>>>   { g'4 as'2 } >>
>>> improper while
>>>\tuplet 3/2  << { \voiceOne d''4 c'' es'' \oneVoice }
>>> \new Voice { \voiceTwo g'4 as'2 } >>
>>> isn't?  Either one does not create a new voice context for the upper
>>> line, as the tie reaching into the upper voice (here omitted) proves.
>> 
>
>
> I don't know, but what I meant to say is that this use of \tuplet
> outside of \voices or a split into multiple voices seems to me to be
> "undefined behavior" ("unspecified"?).

Says who?  Are you saying that your proposed variant is wrong as it does
not differ in that regard?

-- 
David Kastrup



Re: Where is my tuplet bracket?

2023-10-16 Thread William Rehwinkel via LilyPond user discussion
I don't know, but what I meant to say is that this use of \tuplet 
outside of \voices or a split into multiple voices seems to me to be 
"undefined behavior" ("unspecified"?).


-William

On 10/16/23 19:09, David Kastrup wrote:

William Rehwinkel  writes:


Dear David,

This seems like an improper/unintended use of \tuplet.


How so?

How is

   \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
  { g'4 as'2 } >>

improper while

   \tuplet 3/2  << { \voiceOne d''4 c'' es'' \oneVoice }
\new Voice { \voiceTwo g'4 as'2 } >>

isn't?  Either one does not create a new voice context for the upper
line, as the tie reaching into the upper voice (here omitted) proves.



--
William Rehwinkel - Oberlin College and Conservatory '24

will...@williamrehwinkel.net

PGP key: https://ftp.williamrehwinkel.net/pubkey.txt


OpenPGP_signature.asc
Description: OpenPGP digital signature


Re: Where is my tuplet bracket?

2023-10-16 Thread David Kastrup
William Rehwinkel  writes:

> Dear David,
>
> This seems like an improper/unintended use of \tuplet.

How so?

How is

  \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
  { g'4 as'2 } >>

improper while

  \tuplet 3/2  << { \voiceOne d''4 c'' es'' \oneVoice }
\new Voice { \voiceTwo g'4 as'2 } >>

isn't?  Either one does not create a new voice context for the upper
line, as the tie reaching into the upper voice (here omitted) proves.

-- 
David Kastrup



Re: Where is my tuplet bracket?

2023-10-16 Thread William Rehwinkel via LilyPond user discussion

Dear David,

This seems like an improper/unintended use of \tuplet. I would have used 
\scaleDurations instead.


However, if you slightly modify the mwe as shown below, the tuplet 
bracket is shown.


Thanks,
-William

\version "2.25.7"

\new Staff {
  \key c \minor
  < es' g' > < bes' d''~ >2. |
  \tuplet 3/2  << { \voiceOne d''4 c'' es'' \oneVoice }
  \new Voice { \voiceTwo g'4 as'2 } >>
  < f' as' >4  |
}


On 10/16/23 17:50, David Kastrup wrote:


Admittedly, this is still better than the warning and crash an earlier
version rather than current master puts out.

But now there is neither warning nor crash.



--
+ --- +
|   William Rehwinkel - Oberlin College and   |
|  Conservatory '24   |
|will...@williamrehwinkel.net |
| PGP key:|
| https://ftp.williamrehwinkel.net/pubkey.txt |
+ --- +


OpenPGP_signature.asc
Description: OpenPGP digital signature


Where is my tuplet bracket?

2023-10-16 Thread David Kastrup
\new Staff {
  \key c \minor
  < es' g' > < bes' d''~ >2. |
  \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
			  { g'4 as'2 } >>
  < f' as' >4  |
}

Admittedly, this is still better than the warning and crash an earlier
version rather than current master puts out.

But now there is neither warning nor crash.

-- 
David Kastrup