>> I defintely don't want to have to write a Highland
>> pipe jig (typical grace = 1/32) like:
>> L:1/8
>> K:HP
>> {g//}A{d//}A{e//}A {g//e//f//}e2 f | {g//}ec{G//}c {g//e//f//}e2
> How about
> L:1/8 grace="1/32"
> K:HP
> {g}A{d}A{e}A {gef}e2 f | {g}ec{G}c {gef}e2
Why the quotes?
I'd prefer
L:1/8 {1/32}
and for the functionality Ewan wants, setting this once and for all for
a bunch of tunes, have a line near the start of the file just saying
L:{1/32}
with the default length for melody notes unspecified and maybe varying
throughout the file.
: The format <param>=<value> is preferable because it is more flexible
: and allows future extensions.
In this case there aren't likely to be any future extensions, so
readability becomes a more important consideration. Even when there
are likely to be extensions, this syntax can be too ugly to consider;
e.g. for non-Western key signatures, would you really rather have
"K:D Major second=_E sixth=_B" than "K:D Major _E _B" ?
I think of the header fields in ABC as being typed, and *not* all of
type "string". For such information alternative lexical syntaxes
are usually appropriate. The type of this field is presently that
of rational fractions and the proposal makes it a variant, rational
fraction or pair of rational fractions (or perhaps ordered pair of
[rational|NULL]). I can think of only one piece in all music where
you'd want anything different, Nancarrow's player piano piece where
the basic note lengths of the two parts are in the ratio 1:sqrt(2).
: And most important, it solves most compatibility problems: programs
: only interpret the <param> clauses which they know and ignore the other.
It's no harder for a program to ignore "{1/32}" than "grace="1/32"", is
it?
BTW, there is a seriously hairy problem with the semantics of variable-
length gracenotes in Highland pipe music. There are bunch of pibroch
transcriptions on the web which encode them in full gory detail using
the Piob Mhor notation; I don't have a machine which can process that,
but I think the effect is that it plays right while also generating the
usual sort of score, which has the timing oversimplified. I don't think
it's reasonable to ask the implementors of player programs to understand
details of interpretation that are normally passed on by oral tradition,
but if their software can accept gracenote groups like {ge4d} without
gagging and maybe play them as {ged} that'll do for a start.
But let's get tempo fixed first.
=================== <http://www.purr.demon.co.uk/jack/> ===================
To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html