| home | tune search | software | learn abc | discuss | about | blog | Starbound/LOTRO | contact |
[abc standard: home | current | route-map | updating | proposals]
A number of options for allowing re-transposition have been discussed, mostly relating to how the modifiers in a K: or V: field interact with each other (either combining or overriding).
There are five choices.
The following (nonsensical) example is used in each choice to illustrate what effect the interaction has:
K:C instrument=_E;abc@written shift=CG clef=treble clef=alto octave=1 octave=1
which, when you replace the instrument and shift shorthands, resolves to
K:C shift-score=cc shift-sound=c_E shift-score=CG shift-sound=CG clef=treble clef=alto octave=1 octave=1
instrument= and shift= may be combined (by resolving to their shift-score= & shift-sound= equivalents). Although nonsensical, repeated combinable modifiers (e.g. stafflines= and octave=) are legal and add their effects.clef and accidentals (K: field only) and in these cases the last one overrides any previous modifier of the same type (software may issue a non-fatal error message).K:C shift-score=CG shift-sound=c_B clef=alto octave=2
instrument= and shift= may be combined (by resolving to their shift-score= & shift-sound= equivalents).instrument= and shift= are not regarded as repeats of shift-score= and shift-sound= even though they are defined in terms of them.K:C shift-score=CG shift-sound=c_B clef=alto octave=1
shift-score=, shift-sound=, shift= and instrument= modifiers in a K: or V: field combine.shift-score= & shift-sound= equivalents.K:C shift-score=CG shift-sound=c_B clef=alto octave=1
shift-score=, shift-sound=, shift= and instrument= modfiers in a K: or V: field combine but may not be repeated.shift-score= & shift-sound= equivalents.instrument= and shift= are not regarded as repeats of shift-score= and shift-sound= even though they are defined in terms of them.K:C shift-score=CG shift-sound=c_B clef=alto octave=1
instrument=<note>;abc@concert and instrument=<note>;abc@written modifier may optionally include an additional transposition.instrument=<note>;abc@concert;+<note1><note2> is "shorthand" for shift-score=<note1><note2>+<note>c shift-sound=<note1><note2>instrument=<note>;abc@written;+<note1><note2> is "shorthand" for shift-score=<note1><note2> shift-sound=<note1>note2>+c<note>+ adds the two transposition intervals together.instrument= and shift= should be resolved to shift-score= and shift-sound= before overriding is evaluated.K:C shift-score=CG shift-sound=CG clef=treble octave=1
To achieve the same as combining syntaxes, the example may be rewritten
K:C instrument=_E;abc@written;+CG clef=treble clef=alto octave=1 octave=1
which resolves to
K:C shift-score=CG shift-sound=c_B clef=alto octave=1
A number of options have been proposed for the wording to represent "the abc is encoded at concert/written pitch for an instrument in <note>".
The following express those options for an instrument in low C:
instrument=C;concert-abc instrument=C;written-abcinstrument=C;abc=concert instrument=C;abc=writteninstrument=C;abc@concert instrument=C;abc@writteninstrument=C;concert instrument=C;writteninstrument=C;abc-as-sounded instrument=C;abc-as-writteninstrument=C/abc-sound instrument=C/abc-scoreinstrument-concert=C instrument-written=Cconcert-abc:instrument=C written-abc:instrument=Cshift=instrument-in:C/abc@sound shift=instrument-in:C/abc@score
In most cases these options could have a shorthand (e.g. in the case of 1, 2, and 3 it could be instrument=C;concert / instrument=C;written) but we will decide on that later.