]> git.donarmstrong.com Git - lilypond.git/commit
Feature: Add Harp pedal diagrams, i.e. a \harp-pedal markup function
authorReinhold Kainhofer <reinhold@kainhofer.com>
Mon, 18 Aug 2008 18:07:12 +0000 (20:07 +0200)
committerReinhold Kainhofer <reinhold@kainhofer.com>
Tue, 19 Aug 2008 17:08:12 +0000 (19:08 +0200)
commit37167c33a70c914334b6a4b5fec8eb5c6a62a555
tree7a2d7baad22c982527f47e6f3b589c7e23cd0000
parent5a5ac06f4f6e8b737a59a25aae0663a32f8215e3
Feature: Add Harp pedal diagrams, i.e. a \harp-pedal markup function

Add a \harp-pedal markup function, which produces harp pedalling diagrams. The
syntax is
    \harp-pedal #"^-v|--ov^"
The contents of the string define the positions of the pedals (^/-/v for
up/neutral/down), | is the divider and o indicates that the next pedal
should be circled. It can be tweaked through the size and thickness props
and the harp-pedal-details property list of the TextScript grob. For this, I
had to add a harp-pedal-interface, too.

The only issue I'm still having is that lilypond does not have a function
to draw an ellipse, so all I can do for circled pedals is to draw a circle
rather than an ellipse... Also, using a rounded box does not work, as that
fills its contents, thus overdrawing the pedal box.

I've also added three regression test cases, namely
-) Basic functionality checks (including circled boxes and an empty definition
   string, as well as invalid characters in the string)
-) Sanity checks: Lilypond will check whether the diagram follows standard
   rules (7 pedals with one divider after the third). If not, it will print
   out a warning, but should still produce the diagram as given.
-) Tweaking: Most details of the diagram can be tweaked using size, thickness
   and harp-pedal-details.
Documentation/topdocs/NEWS.tely
input/regression/harp-pedals-sanity-checks.ly [new file with mode: 0644]
input/regression/harp-pedals-tweaking.ly [new file with mode: 0644]
input/regression/harp-pedals.ly [new file with mode: 0644]
scm/define-grob-interfaces.scm
scm/define-grob-properties.scm
scm/harp-pedals.scm [new file with mode: 0644]
scm/lily.scm