David Kastrup <[email protected]> writes: > Lukas-Fabian Moser <[email protected]> writes: > >> meaning: A scale? can be >> - a fraction? >> - an non-negative exact rational number >> - a LilyPond moment whose main part is in turn a scale?. >> >> This is fulfilled by 4, hence in your call to \afterGrace 4 { cs16 d }, >> ... 4 is taken to be the afterGrace "fraction" (and in recent >> versions, there is the warning, added by me, that this fraction is >> larger than 1) >> ... { cs16 d } is taken to be the "main" note >> ... whatever comes after is taken to be the "main" note (since in your >> minimal example, nothing comes after this, compilation fails >> completely). >> >> I'm not sure about David Kastrup's rationale for allowing a scale? as >> an afterGraceFraction, but if anybody is aware about the implications >> his changes might have for LilyPond's syntax, it's him. >> https://gitlab.com/lilypond/lilypond/-/issues/5327 >> https://gitlab.com/lilypond/lilypond/-/commit/027538606b016afb643555d654cefaee94dfb424 > > For the optional argument of \afterGrace, there would be some incentive > in case of a duration to interpret it as a duration rather than as a > scale factor. That would, however, make this different from either what > \afterGraceFraction accepts, or what its name insinuates. Also it would > make the predicate scale? be an inadequate description of what the > argument's type is which would functionally be > non-duration-scale-or-duration? which of course has the exact same > implementation.
Correction: a duration (as opposed to a music-length) is _not_ permitted by scale? but a non-negative exact rational number is (which 4 qualifies as). duration-or-scale? would be possible in theory but would create too much ambiguity for things like 2 . As in: > In short, a maze of conflicting considerations in the context of > creating versatile and uniform behavior leading to a so-so outcome. -- David Kastrup
