On Tue, Dec 10, 2024 at 7:13 PM Dan Eble <dan@lyric.works> wrote: > Current Name Proposed New Name > ------------------------------ --------------------------- > measureLength measureLength (no change) > minimumPageTurnLength pageTurnMinimumRestLength > minimumRepeatLengthForPageTurn pageTurnMinimumRepeatLength > proportionalNotationDuration (not sure yet) > tupletSpannerDuration tupletBracketMusicalLength > voltaSpannerDuration voltaBracketMusicalLength > > The motivation for moving away from "duration" is that there is an > internal type called duration and that is not what these use. > > There is inconsistency between "length" and "musical length" because it > sounds unnecessary to specify that "length" is used in the musical sense > for measure, rest, or repeat, but it seems helpful to specify it for a > horizontal bracket. >
Hi, Perhaps I'm the only one who feels this way, but I wish we would more carefully distinguish between "duration" as a measure of *time* and "length" as a measure of *space*. LilyPond deals in a crucial way with both of these things. Musical events have a duration; they can be measured in seconds (or fractions of a whole note). The physical dimensions of paper (and distances between objects on the page) have a length; they can be measured in centimeters, inches, points and the like. Thinking this way, proportionalNotationDuration is named correctly, because what's being set here is a unit of time. Settings to proportionalNotationDuration used to look like this ... \set Score.proportionalNotationDuration = #(ly:make-moment 1/12) ... but were then changed by a convert-ly rule to ... \set Score.proportionalNotationDuration = \musicLength 1 * 1/12 ... which introduced a discoradancy between "duration" ( on the left-hand side) and "length" (on the right-hand side). But I think the mismatch here is \musicLength, rather than proportionalNotationDuration. Aren't all of the context properties discussed here measuring units of time? So maybe: Current Name Proposed New Name ------------------------------ --------------------------- measureLength measureDuration minimumPageTurnLength pageTurnMinimumRestDuration minimumRepeatLengthForPageTurn pageTurnMinimumRepeatDuration proportionalNotationDuration (no change) tupletSpannerDuration (no change) voltaSpannerDuration (no change) \musicLength \musicDuration or just \duration Regardless of the names of Lily's underlying (and therefore user-invisible?) types, these user-facing context properties all measure time, and not space. I think there might be a real gain in clarity in the public-facing API if we move to labeling time-based properties with "duration" and reserve "length" for properties that measure things in centimeters, inches, staff spaces and the like. Trevor. -- Trevor Bača www.trevorbaca.com soundcloud.com/trevorbaca