Loading…
Loading…
Rule
Gradus GE-206 · cite this code — it is permanent. Rule id hairpin-pedal-octaveshift-placement-not-voice-aware
Like dynamics, a crescendo/decrescendo hairpin, piano pedal mark, or octave-shift bracket belonging to the upper voice of a shared pair should render on the side that disambiguates it from the lower voice's marks (hairpins conventionally track the dynamic they're paired with; pedal marks are a keyboard-specific convention that arguably belongs below regardless of voice, but should still be reviewed per case).
Gould, Behind Bars — general principle that per-voice expressive markings on a shared stave need side-disambiguation consistent with the dynamic-placement rule; pedal marks are a partial exception (Gould treats piano pedal as belonging to the instrument as a whole, not per voice, so 'below' may in fact be correct there regardless of voice — flagged here for review, not asserted as a confirmed defect the way dynamics are).
This rule can be decided from pitches, durations and voices — no layout required. A validator can check it before anything is drawn.
Gradus GE-206 — Public-API hairpins, pedal marks, and octave-shifts share the dynamic-placement defect — all hard-coded to one side regardless of voice. Gradus Engraving Rulebook v1.0. https://gradusmusic.com/engraving/rule/hairpin-pedal-octaveshift-placement-not-voice-aware
Rulebook v1.0 · text licensed CC-BY-4.0 · machine-readable at /api/v1/engraving/rules/hairpin-pedal-octaveshift-placement-not-voice-aware