I have checked in the beginnings of a list of %%directives in use by ABC applications. The current version includes the ones used by abcMIDI, plus the ones I use in abc2ly. The current version is attached. The latest version can in general be seen at http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/src/standard/pp_directives.txt?cvsroot=abc Anyone registered as a sourceforge developer who has figured out the magic for using sourceforge cvs is welcome to add information to this list. Anyone who would like to add information but who does not want to be a sourceforge developer, or hasn't figured out the cvs yet can send their information to me, and I will add it. I expect this list to be useful in the following ways: In our discussions of extending the standard, part of the input should be which extensions are actually being used via the %% directives. While the standard should not control the usage of %% directives, it is obviously undesirable that two different ABC applications should use the same extension for two different purposes. So developers contemplating adding a directive should check this list to make sure that their projected use does not conflict with an existing use. It may be useful as a pointer to documentation about what extensions exist and how to use them.
# each non-comment line in this file is a description of a %% syntax # Lines which begin with whitespace are continuations of the previous # non-comment line. # directive used by description #--------------------------------------------------------------------- # complete documentation of the abcMIDI usage of %%MIDI lines can be # found in abcguide.txt at #http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/abcMIDI/abcguide.txt?cvsroot=abc %%MIDI channel n abcMIDI selects melody channel %%MIDI program [c] n abcMIDI selects program %%MIDI beat a b c n abcMIDI controls the way note velocities are selected %%MIDI beatstring [fmp]* abcMIDI alternative to %%MIDI beat %%MIDI transpose n abcMIDI transpose %%MIDI rtranspose n abcMIDI relative transpose %%MIDI c n abcMIDI specifies the MIDI pitch which corresponds to c %%MIDI grace a/b abcMIDI sets fraction of the next note for grace notes %%MIDI chordname name n1 n2 n3 n4 n5 n6 abcMIDI defines how to play a guitar chord %%MIDI gchord string abcMIDI sets up how guitar chords are generated. %%MIDI chordprog n abcMIDI sets the MIDI instrument for chords %%MIDI bassprog n abcMIDI sets the MIDI instrument for the bass notes %%MIDI chordvol n abcMIDI sets the volume (velocity) of the chord notes %%MIDI bassvol n abcMIDI sets the volume (velocity) of the bass notes %%MIDI gchordon abcMIDI turns on guitar chords %%MIDI gchordoff abcMIDI turns off guitar chords. %%MIDI drum string [drum programs] [drum velocities] abcMIDI sets up a drum pattern. %%MIDI control [bass/chord] n1 n2 abcMIDI generates a MIDI control event %%MIDI barlines abcMIDI restores normal treatment of accidentals (i.e. accidentals do persist until the next barline %%MIDI nobarlines abcMIDI, abc2ly Indicates that the accidentals do not persist until the next barline. %%LY voices abc2ly add the rest of the line to the notes of the lilypond output file. %%LY slyrics abc2ly add the rest of the line to the lyrics of the lilypond output file.
-- Laura (mailto:[EMAIL PROTECTED] , http://www.laymusic.org ) (If I haven't invited you to my party on December 17 yet, I'm sure it's an oversight. Check it out at http://www.laymusic.org/party.html.)
