Loading…
Loading…
Rule
Gradus GE-125 · cite this code — it is permanent. Rule id expr-grace-zero-beat-invariant
Grace notes take no time from the notated meter — they are performed by "borrowing" a sliver of the neighboring note's duration, not by occupying their own beat slot.
A regression where a grace note accidentally gets counted as a normal beat-consuming entry in `notes[]` (rather than nested inside a principal note's `graceNotes` array) would silently corrupt the measure's beat total and desynchronize barlines/beaming for the rest of the system.
Gould, Behind Bars, ch. Grace Notes — grace notes are explicitly outside the metrical count; standard MusicXML/MIDI/VexFlow modeling treats them as zero-duration for measure-total purposes.
This rule can be decided from pitches, durations and voices — no layout required. A validator can check it before anything is drawn.
Gradus GE-125 — Grace notes must never consume rhythmic/tick budget of their own. Gradus Engraving Rulebook v1.0. https://gradusmusic.com/engraving/rule/expr-grace-zero-beat-invariant
Rulebook v1.0 · text licensed CC-BY-4.0 · machine-readable at /api/v1/engraving/rules/expr-grace-zero-beat-invariant