Re: zero-duration s to hold marks
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
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
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
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
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
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
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
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
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
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
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
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
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
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