lilypond-auto
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lilypond-auto] Issue 2522 in lilypond: duration*0 considered harmfu


From: lilypond
Subject: Re: [Lilypond-auto] Issue 2522 in lilypond: duration*0 considered harmful
Date: Mon, 04 Jun 2012 14:29:39 +0000


Comment #14 on issue 2522 by address@hidden: duration*0 considered harmful
http://code.google.com/p/lilypond/issues/detail?id=2522

Putting aside the discussions about the "side issue" and corresponding patch: I find it acutely embarrassing that we have _no_ documentation whatsoever regarding what s1*0 does and why one would use it. The only _somewhat_ relevant information is in the wrong manual, namely EG, and if you look at <URL:http://lilypond.org/doc/v2.15/Documentation/extending/adding-articulation-to-notes-_0028example_0029> it turns out that

  We could avoid this problem by attaching the articulation to a fake note,

      { << \music s1*0-.-> }

  but for the sake of this example, we will learn how to do this in Scheme.

contains more errors than information. It is not clear whether or not this is supposed to use simultaneous music since we have << without corresponding >>, and the note in question is not a "fake note" but a spacer rest, and, if you were to use s1*0 at all here, you would do this without simultaneous music, as { s1*0-.-> \music } and hope that the next note is entered with explicit duration.

So it is rather obvious that the idiom s1*0 has not as much established because it would be documented anywhere, but rather because of being visible.

If you take a look at <URL:http://lilypond.org/doc/v2.15/Documentation/notation/writing-rhythms#scaling-durations>, you'll find that the possibility of scaling by 0 is not even mentioned. Neither is this mentioned in <URL:http://lilypond.org/doc/v2.15/Documentation/notation/writing-rests#invisible-rests>. While the chapter mentions that spacer rests will, as opposed to \skip, create a Staff implicitly, it does not even mention that spacer rests can also take articulations/post-events. And <URL:http://lilypond.org/doc/v2.15/Documentation/notation/expressive-marks-attached-to-notes#articulations-and-ornamentations> mentions the possibility of adding articulations to rests but does not explicitly mention spacer rests.

So while the currently downcounting patch is supposed to bring the documentation regarding <> and <<...>> to a less shameful state to make it feasible thinking about the degree to which mentioning/using <> might be a good idea, the fact is that the current documentation available for deducing the function/mechanism of s1*0 is totally abysmal. If it disappeared from code and examples, it is probably less likely that someone would spontaneously think of s1*0 rather than of <>.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]