This section describes the articulations(...) function, used within notes mode, which allows the articulations applied to notes to be completely redefined.
The articulations function is modal, in that the instructions within it are specialised and executed in order as follows...
new(): resets the articulations and starts again from scratch, otherwise current settings are preserved.
standard_articulations(): assigns the standard set of articulations as described at notes.
list(): lists the current settings.
Any other command that doesn't match to the above, of the form X(LIST_OF_SETTINGS) is taken to assign a new (or replace an existing) form of articulation to be applied to subsequent notes. X is currently limited to a single character, which can be any legal character (i.e. not brackets, =, etc.). The list of possible settings for an articulation are as follows. If these are omitted, the articulation has no effect on that setting. Multiple articulations on a note are evaluated left to right.
amp(A): sets the amplitude multiplier. Values >1 indicate an accent.
amp() is unusual here in that its settings act multiplicatively with settings in notes mode. All the other settings below take precedence over settings in notes mode (and thus can be used to turn these or global settings off as well as on on a note-by-note basis). All note-specific articulations take precedence over those automatically generated by beats(...).
staccato(D): sets the portion of time for which the notes sounds, 0 ≤ D ≤ 1.
start_slur(): this articulation causes a slur to start.
stop_slur(): this articulation causes a slur to stop.
glide(BOOL): a pitch glide fills the whole note.
rev(BOOL): sets reverberation for notes after their rhythmic duration.
D_rev(NUM DENOM) D_rev(NUM): sets an explicit note duration as does the function in notes mode.
env(ENVELOPE) envelope(ENVELOPE): applies a volume envelope to the note, taking priority over any other envelope setting. No built-in articulation uses this, nor those outlined below.
env_adjust(BOOL): automatic adjustment of envelope length, as in Notes Mode.
stereo(L R): Applies a stereo setting to the note. L and R must be specified (i.e. forms such as stereo(off) are not allowed here).
vib(FREQ AMP OFFSET BEND BEND_T): Works as the function in notes mode, applying vibrato and pitch bend.
port(TIME): Sets the portamento time for slurred notes.
scratch(with=WITH f=FACTOR bias=BIAS loop=LOOP): Works as the function in notes mode, applying frequency modulation.
tremolo(FREQ AMP): Works as the function in notes mode, applying amplitude modulation.
articulations( S(staccato(0.6)) M(staccato(0.7) amp(1.5)) list() ) c d e-S f-M g