I'm working on coding dynamic marks into PMX.  Here's your chance to 
get in on the ground floor with your comments and suggestions.

What I have so far is:

1. Accept only the 12 MusiXTeX combinations (pppp...ffff) (because the 
MusiXTeX macros use special kerning).
2. Associate them only with notes, not rests. 
3. One symbol at a time per line of music. 
4. The default vertical position is 5\internote below the lowest of 
(a) bottom of the staff, (b) bottom of lowest notehead, or (c) bottom 
of stem.  I haven't worked out the height calculations for down-beamed 
notes...it's possible but very tricky.  I also haven't fine tuned the 
position under a down-stemmed single note to account for different 
stem lengths, but I don't do the analogous fine-tuning for ornaments 
above upstemmed notes either.
5. The default horizontal position is with the first letter of the 
dynamic mark under the note (just use \zcharnote).
6. Vertical position can be shifted from default by +/- 32 \internote 
7. Horizontal position can be shifted from default by +/- 6.4 notehead 
widths.

The syntax is D(dynamic symbol)[(+|-)(integer)[(+|-)number]]

Issues:

1. Is the basic default height correct?
2. Should "f"..."ffff" be positioned one notch lower than the others? 
3. Should there be an option to specify the absolute height, perhaps 
e.g. Dppppa-3 for a space of 3 internotes between the top of the "f" 
and the bottom of the staff?  This would make it easier to align all 
the marks in a particular staff.
4. How important is it to deal with the effect of down-beams on the 
default height?  Or can I just let people manually adjust?
5. How important is it to deal with the effect of length variablilty 
of down-stems on the default height?  Or can I just let people 
manually adjust?

While we're at it, although I haven't started coding, I'm planning to 
use ">" and "<" as toggles for dim and cresc, again only on notes (not 
rests), height and horizontal shifts as above on the starting point, 
horizontal shift only on the termination.  I'll probably base the 
default height on the starting note since that's easiest.  Comments?

--Don

Reply via email to