Re: zero-duration s to hold marks

2024-01-15 Thread David Kastrup
Raphael Mankin  writes:

> As a more general response to this thread, I feel that the reference
> manual needs to have more cross references. I frequently get a bit
> lost trying to find a suitable construct, or discovering what a
> construct means.
>
> This thread has already shown that 1.2.2, 1.3.* and 1.5.* need to
> cross-reference each other.

Fortunately, this is Free Software.  If you feel there is a deficiency
in code or manual, you can contribute a patch to address it, and it is
likely to get accepted since volunteers contributing changes is actually
the only way in which LilyPond is getting improved.

-- 
David Kastrup



Re: zero-duration s to hold marks

2024-01-15 Thread Raphael Mankin
As a more general response to this thread, I feel that the reference 
manual needs to have more cross references. I frequently get a bit lost 
trying to find a suitable construct, or discovering what a construct means.


This thread has already shown that 1.2.2, 1.3.* and 1.5.* need to 
cross-reference each other.


On 12/01/2024 17:48, Mats Bengtsson wrote:


On 2024-01-12 15:58, Knute Snortum wrote:


At least section 1.2.2 of the reference manual ought to be updated to
include <> in the discussion of invisible rests.


Can you share how you would want that section changed?  Or I could 
take a stab at it, but it may not be what you want.  Also, <> can be 
used for a lot of different things that aren't rests, so maybe that 
section of the Notation manual is not the best place for it.


Agreed! In fact it's not a rest but the empty chord construct should 
rather be seen as a placeholder without any duration, to which you can 
attach things that normally are attached to notes. The question is where 
to best describe it in the manuals. If you search the full manuals for 
<>, the construct is used in several examples without any explanation, 
but there are also a few places where "empty chord" is described in 
conjunction with special cases of how to use it (see the entries for 
"chord, empty" in the Lilypond Index). In A.15 there's even a reference 
to the learning manual, 
http://lilypond.org/doc/v2.25/Documentation/learning-big-page#structure-of-a-note-entry, which unfortunately doesn't seem to explain it either, even though the construct is used in several examples also in the learning manual.


Perhaps one suitable place could be Sect. 1.3.1 of the NR "1.3.1 
Expressive marks attached to notes", but it could also be worth 
mentioning in 1.7 "Editorial annotations", for example. Technically, 
Sect. 1.5.1 "Chorded Notes" is the natural place to describe it, but 
that's probably not the most obvious place to look when you don't know 
about the construct.


    /Mats




--
Why you get crap software: testing just raises problems and makes you 
look bad.




Re: zero-duration s to hold marks

2024-01-12 Thread Lukas-Fabian Moser via LilyPond user discussion

Hi Raphael,

Am 12.01.24 um 13:32 schrieb Raphael Mankin:
I agree that 0 as a denominator would seem to indicate an infinite 
duration, and allow the rest of your argument. However <> still seems 
unintuitive.


I agree that <> isn't obvious. But in a complex language like LilyPond, 
there's always something like "idioms". I remember that I learned about 
<> quite late in my acquaintance with LilyPond, and it changed my input 
habits a bit - namely for standalone dynamics: <>\p s4 instead of s4\p. 
I had the project of introducing this idiom into the examples in the 
notation manual, but don't remember right now whether I ever finished this.


Lukas




Re: zero-duration s to hold marks

2024-01-12 Thread Mats Bengtsson


  
  


On 2024-01-12 15:58, Knute Snortum
  wrote:


  At
least section 1.2.2 of the reference manual ought to be updated
to 
include <> in the discussion of invisible rests.
  
  
  
  Can you share how you would want that section changed?  Or I
could take a stab at it, but it may not be what you want.  Also,
<> can be used for a lot of different things that aren't
rests, so maybe that section of the Notation manual is not the
best place for it.
   

Agreed! In fact it's not a rest but the empty chord construct
  should rather be seen as a placeholder without any duration, to
  which you can attach things that normally are attached to notes.
  The question is where to best describe it in the manuals. If you
  search the full manuals for <>, the construct is used in
  several examples without any explanation, but there are also a few
  places where "empty chord" is described in conjunction with
  special cases of how to use it (see the entries for "chord, empty"
  in the Lilypond Index). In A.15 there's even a reference to the
  learning manual,
http://lilypond.org/doc/v2.25/Documentation/learning-big-page#structure-of-a-note-entry,
  which unfortunately doesn't seem to explain it either, even though
  the construct is used in several examples also in the learning
  manual. 

Perhaps one suitable place could be Sect. 1.3.1 of the NR "1.3.1
  Expressive marks attached to notes", but it could also be worth
  mentioning in 1.7 "Editorial annotations", for example.
  Technically, Sect. 1.5.1 "Chorded Notes" is the natural place to
  describe it, but that's probably not the most obvious place to
  look when you don't know about the construct. 

   /Mats



  




Re: zero-duration s to hold marks

2024-01-12 Thread Knute Snortum
On Fri, Jan 12, 2024 at 6:21 AM Raphael Mankin  wrote:

>
>
> On 10/01/2024 10:35, msk...@ansuz.sooke.bc.ca wrote:
> > On Wed, 10 Jan 2024, Raphael Mankin wrote:
> >
> >> That strikes me as being a programmer's response, and I speak as a
> programmer
> >> for over 50 years. Using <> works, but it is unintuitive. If s0 is more
> >> intuitive then that should be considered for future inclusion.
> >
> > It's intuitive to me that s0 means a spacer rest of infinite duration,
> > because it's one whole note divided by zero.  And it opens the door
> > to using 0 as a duration denominator for other things than "s", as in
> "c0"
> > and "0", let alone constructions like "s0." which would seem to be
> > a spacer of one and one half times infinite duration.  I don't think it's
> > a good idea to open those doors.  There doesn't seem to be any way to
> > allow zero as the duration denominator except as a unique exception; it
> > cannot be done in a way that's consistent with other syntax.
> >
> I agree that 0 as a denominator would seem to indicate an infinite
> duration, and allow the rest of your argument. However <> still seems
> unintuitive.
>

Well, to my eye, it looks like an empty chord, which makes some sense.


>
> At least section 1.2.2 of the reference manual ought to be updated to
> include <> in the discussion of invisible rests.
>

Can you share how you would want that section changed?  Or I could take a
stab at it, but it may not be what you want.  Also, <> can be used for a
lot of different things that aren't rests, so maybe that section of the
Notation manual is not the best place for it.


Re: zero-duration s to hold marks

2024-01-12 Thread David Kastrup
Raphael Mankin  writes:

> On 10/01/2024 10:35, msk...@ansuz.sooke.bc.ca wrote:
>> On Wed, 10 Jan 2024, Raphael Mankin wrote:
>> 
>>> That strikes me as being a programmer's response, and I speak as a 
>>> programmer
>>> for over 50 years. Using <> works, but it is unintuitive. If s0 is more
>>> intuitive then that should be considered for future inclusion.
>> It's intuitive to me that s0 means a spacer rest of infinite
>> duration,
>> because it's one whole note divided by zero.  And it opens the door
>> to using 0 as a duration denominator for other things than "s", as in "c0"
>> and "0", let alone constructions like "s0." which would seem to be
>> a spacer of one and one half times infinite duration.  I don't think it's
>> a good idea to open those doors.  There doesn't seem to be any way to
>> allow zero as the duration denominator except as a unique exception; it
>> cannot be done in a way that's consistent with other syntax.
>> 
> I agree that 0 as a denominator would seem to indicate an infinite
> duration, and allow the rest of your argument. However <> still seems
> unintuitive.

Well, there's been discussion about using z but then what would z with a
duration mean, and z is not just unintuitive in that you would not think
of writing it without knowing it but also unintuitive because you have
no way to know what it is when reading it.

<> at least is comprised of known elemeents.

-- 
David Kastrup



Re: zero-duration s to hold marks

2024-01-12 Thread Raphael Mankin




On 10/01/2024 10:35, msk...@ansuz.sooke.bc.ca wrote:

On Wed, 10 Jan 2024, Raphael Mankin wrote:


That strikes me as being a programmer's response, and I speak as a programmer
for over 50 years. Using <> works, but it is unintuitive. If s0 is more
intuitive then that should be considered for future inclusion.


It's intuitive to me that s0 means a spacer rest of infinite duration,
because it's one whole note divided by zero.  And it opens the door
to using 0 as a duration denominator for other things than "s", as in "c0"
and "0", let alone constructions like "s0." which would seem to be
a spacer of one and one half times infinite duration.  I don't think it's
a good idea to open those doors.  There doesn't seem to be any way to
allow zero as the duration denominator except as a unique exception; it
cannot be done in a way that's consistent with other syntax.

I agree that 0 as a denominator would seem to indicate an infinite 
duration, and allow the rest of your argument. However <> still seems 
unintuitive.


At least section 1.2.2 of the reference manual ought to be updated to 
include <> in the discussion of invisible rests.



--
Political correctness: a kind of McCarthyite movement in reverse which,
in the name of tolerance proscribes all reference to gender, ethnicity,
color of skin, sexual preference, social provenance and even age. It has
no leaders, as far as I am aware, only terrified disciples. - John le Carre



Re: zero-duration s to hold marks

2024-01-10 Thread David Kastrup
Jean Abou Samra  writes:

> Raphael:
>> That strikes me as being a programmer's response, and I speak as a
>> programmer for over 50 years. Using <> works, but it is unintuitive. If 
>> s0 is more intuitive then that should be considered for future inclusion.
>
> s1*0 works and is more or less equivalent to <> .

The counterexample is

\new Voice { c'4\< g' c'2 s1*0\! }
\addlyrics { What is this? }

This works when using <> instead.

-- 
David Kastrup



Re: zero-duration s to hold marks

2024-01-10 Thread Jean Abou Samra
Raphael:
> That strikes me as being a programmer's response, and I speak as a
> programmer for over 50 years. Using <> works, but it is unintuitive. If 
> s0 is more intuitive then that should be considered for future inclusion.

s1*0 works and is more or less equivalent to <> .



John:
> The second is for putting a mark, eg a coda, at the very end of a measure,
> over the barline (not over the last note, or the first note of the next 
> measure).

For that, see \repeat segno, or if your use case doesn't fit the possibilities
of \repeat segno, use \codaMark.

http://lilypond.org/doc/v2.24/Documentation/notation/long-repeats.html#segno-repeat-structure

For arbitrary markup use \textMark or \textEndMark.

http://lilypond.org/doc/v2.24/Documentation/notation/writing-text.html#text-marks




signature.asc
Description: This is a digitally signed message part


Re: zero-duration s to hold marks

2024-01-10 Thread mskala
On Wed, 10 Jan 2024, Raphael Mankin wrote:

> That strikes me as being a programmer's response, and I speak as a programmer
> for over 50 years. Using <> works, but it is unintuitive. If s0 is more
> intuitive then that should be considered for future inclusion.

It's intuitive to me that s0 means a spacer rest of infinite duration,
because it's one whole note divided by zero.  And it opens the door
to using 0 as a duration denominator for other things than "s", as in "c0"
and "0", let alone constructions like "s0." which would seem to be
a spacer of one and one half times infinite duration.  I don't think it's
a good idea to open those doors.  There doesn't seem to be any way to
allow zero as the duration denominator except as a unique exception; it
cannot be done in a way that's consistent with other syntax.

-- 
Matthew Skala
msk...@ansuz.sooke.bc.ca People before tribes.
https://ansuz.sooke.bc.ca/



Re: zero-duration s to hold marks

2024-01-10 Thread Raphael Mankin




On 09/01/2024 18:35, Paul Scott wrote:

On 1/9/24 11:29 AM, John Asmuth wrote:

Hi lilypond,

I have two users for a s0 (except it tells me 0 is not a duration).


<> does what I believe you want:  <>_\<

HTH,

Paul



That strikes me as being a programmer's response, and I speak as a 
programmer for over 50 years. Using <> works, but it is unintuitive. If 
s0 is more intuitive then that should be considered for future inclusion.


Intuitively, I would have expected <> to generate an empty space equal 
to the length of the preceding note, i.e. a chord that just happens to 
contain no notes.






First, I have a "\repeat unfold N {  ... }" and I want to surround the 
whole thing with a crescendo.


I could unpack the first and last item in the repeat, but I feel 
lily lilypond has some way to do an equivalent of "s0_\< \repeat 
unfold N { ... } s0_\!"


The second is for putting a mark, eg a coda, at the very end of a 
measure, over the barline (not over the last note, or the first note 
of the next measure).


Are there nice ways to do this?

Thanks!
- John







--
Political correctness: a kind of McCarthyite movement in reverse which,
in the name of tolerance proscribes all reference to gender, ethnicity,
color of skin, sexual preference, social provenance and even age. It has
no leaders, as far as I am aware, only terrified disciples. - John le Carre



Re: zero-duration s to hold marks

2024-01-09 Thread John Asmuth
Yes, thank you!

On Tue, Jan 9, 2024 at 1:36 PM Paul Scott  wrote:

> On 1/9/24 11:29 AM, John Asmuth wrote:
> > Hi lilypond,
> >
> > I have two users for a s0 (except it tells me 0 is not a duration).
>
> <> does what I believe you want:  <>_\<
>
> HTH,
>
> Paul
>
>
> >
> > First, I have a "\repeat unfold N {  ... }" and I want to surround the
> > whole thing with a crescendo.
> >
> > I could unpack the first and last item in the repeat, but I feel
> > lily lilypond has some way to do an equivalent of "s0_\< \repeat
> > unfold N { ... } s0_\!"
> >
> > The second is for putting a mark, eg a coda, at the very end of a
> > measure, over the barline (not over the last note, or the first note
> > of the next measure).
> >
> > Are there nice ways to do this?
> >
> > Thanks!
> > - John
>
>
>


Re: zero-duration s to hold marks

2024-01-09 Thread Paul Scott

On 1/9/24 11:29 AM, John Asmuth wrote:

Hi lilypond,

I have two users for a s0 (except it tells me 0 is not a duration).


<> does what I believe you want:  <>_\<

HTH,

Paul




First, I have a "\repeat unfold N {  ... }" and I want to surround the 
whole thing with a crescendo.


I could unpack the first and last item in the repeat, but I feel 
lily lilypond has some way to do an equivalent of "s0_\< \repeat 
unfold N { ... } s0_\!"


The second is for putting a mark, eg a coda, at the very end of a 
measure, over the barline (not over the last note, or the first note 
of the next measure).


Are there nice ways to do this?

Thanks!
- John






zero-duration s to hold marks

2024-01-09 Thread John Asmuth
Hi lilypond,

I have two users for a s0 (except it tells me 0 is not a duration).

First, I have a "\repeat unfold N {  ... }" and I want to surround the
whole thing with a crescendo.

I could unpack the first and last item in the repeat, but I feel
lily lilypond has some way to do an equivalent of "s0_\< \repeat unfold N {
... } s0_\!"

The second is for putting a mark, eg a coda, at the very end of a measure,
over the barline (not over the last note, or the first note of the next
measure).

Are there nice ways to do this?

Thanks!
- John