use super::{Word, WordCompile::*}; // Filter, Envelope, Reverb, Delay, Lo-fi, Stereo, Mod FX pub(super) const WORDS: &[Word] = &[ // Envelope Word { name: "gain", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set volume (0-1)", example: "0.8 gain", compile: Param, varargs: false, }, Word { name: "postgain", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set post gain", example: "1.2 postgain", compile: Param, varargs: false, }, Word { name: "velocity", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set velocity", example: "100 velocity", compile: Param, varargs: false, }, Word { name: "attack", aliases: &["att"], category: "Envelope", stack: "(f --)", desc: "Set attack time", example: "0.01 attack", compile: Param, varargs: false, }, Word { name: "decay", aliases: &["dec"], category: "Envelope", stack: "(f --)", desc: "Set decay time", example: "0.1 decay", compile: Param, varargs: false, }, Word { name: "sustain", aliases: &["sus"], category: "Envelope", stack: "(f --)", desc: "Set sustain level", example: "0.5 sustain", compile: Param, varargs: false, }, Word { name: "release", aliases: &["rel"], category: "Envelope", stack: "(f --)", desc: "Set release time", example: "0.3 release", compile: Param, varargs: false, }, Word { name: "adsr", aliases: &[], category: "Envelope", stack: "(a d s r --)", desc: "Set attack, decay, sustain, release", example: "0.01 0.1 0.5 0.3 adsr", compile: Simple, varargs: false, }, Word { name: "ad", aliases: &[], category: "Envelope", stack: "(a d --)", desc: "Set attack, decay (sustain=0)", example: "0.01 0.1 ad", compile: Simple, varargs: false, }, Word { name: "penv", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set pitch envelope", example: "0.5 penv", compile: Param, varargs: false, }, Word { name: "patt", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set pitch attack", example: "0.01 patt", compile: Param, varargs: false, }, Word { name: "pdec", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set pitch decay", example: "0.1 pdec", compile: Param, varargs: false, }, Word { name: "psus", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set pitch sustain", example: "0 psus", compile: Param, varargs: false, }, Word { name: "prel", aliases: &[], category: "Envelope", stack: "(f --)", desc: "Set pitch release", example: "0.1 prel", compile: Param, varargs: false, }, // Filter Word { name: "lpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass frequency", example: "2000 lpf", compile: Param, varargs: false, }, Word { name: "lpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass resonance", example: "0.5 lpq", compile: Param, varargs: false, }, Word { name: "lpe", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass envelope", example: "0.5 lpe", compile: Param, varargs: false, }, Word { name: "lpa", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass attack", example: "0.01 lpa", compile: Param, varargs: false, }, Word { name: "lpd", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass decay", example: "0.1 lpd", compile: Param, varargs: false, }, Word { name: "lps", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass sustain", example: "0.5 lps", compile: Param, varargs: false, }, Word { name: "lpr", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set lowpass release", example: "0.3 lpr", compile: Param, varargs: false, }, Word { name: "hpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass frequency", example: "100 hpf", compile: Param, varargs: false, }, Word { name: "hpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass resonance", example: "0.5 hpq", compile: Param, varargs: false, }, Word { name: "hpe", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass envelope", example: "0.5 hpe", compile: Param, varargs: false, }, Word { name: "hpa", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass attack", example: "0.01 hpa", compile: Param, varargs: false, }, Word { name: "hpd", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass decay", example: "0.1 hpd", compile: Param, varargs: false, }, Word { name: "hps", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass sustain", example: "0.5 hps", compile: Param, varargs: false, }, Word { name: "hpr", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set highpass release", example: "0.3 hpr", compile: Param, varargs: false, }, Word { name: "bpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass frequency", example: "1000 bpf", compile: Param, varargs: false, }, Word { name: "bpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass resonance", example: "0.5 bpq", compile: Param, varargs: false, }, Word { name: "bpe", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass envelope", example: "0.5 bpe", compile: Param, varargs: false, }, Word { name: "bpa", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass attack", example: "0.01 bpa", compile: Param, varargs: false, }, Word { name: "bpd", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass decay", example: "0.1 bpd", compile: Param, varargs: false, }, Word { name: "bps", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass sustain", example: "0.5 bps", compile: Param, varargs: false, }, Word { name: "bpr", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set bandpass release", example: "0.3 bpr", compile: Param, varargs: false, }, Word { name: "llpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder lowpass frequency", example: "2000 llpf", compile: Param, varargs: false, }, Word { name: "llpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder lowpass resonance", example: "0.5 llpq", compile: Param, varargs: false, }, Word { name: "lhpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder highpass frequency", example: "100 lhpf", compile: Param, varargs: false, }, Word { name: "lhpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder highpass resonance", example: "0.5 lhpq", compile: Param, varargs: false, }, Word { name: "lbpf", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder bandpass frequency", example: "1000 lbpf", compile: Param, varargs: false, }, Word { name: "lbpq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set ladder bandpass resonance", example: "0.5 lbpq", compile: Param, varargs: false, }, Word { name: "ftype", aliases: &[], category: "Filter", stack: "(n --)", desc: "Set filter type", example: "1 ftype", compile: Param, varargs: false, }, Word { name: "eqlo", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set low shelf gain (dB)", example: "3 eqlo", compile: Param, varargs: false, }, Word { name: "eqmid", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set mid peak gain (dB)", example: "-2 eqmid", compile: Param, varargs: false, }, Word { name: "eqhi", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set high shelf gain (dB)", example: "1 eqhi", compile: Param, varargs: false, }, Word { name: "tilt", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set tilt EQ (-1 dark, 1 bright)", example: "-0.5 tilt", compile: Param, varargs: false, }, Word { name: "comb", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set comb filter mix", example: "0.5 comb", compile: Param, varargs: false, }, Word { name: "combfreq", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set comb frequency", example: "200 combfreq", compile: Param, varargs: false, }, Word { name: "combfeedback", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set comb feedback", example: "0.5 combfeedback", compile: Param, varargs: false, }, Word { name: "combdamp", aliases: &[], category: "Filter", stack: "(f --)", desc: "Set comb damping", example: "0.5 combdamp", compile: Param, varargs: false, }, // Reverb Word { name: "verb", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set reverb mix", example: "0.3 verb", compile: Param, varargs: false, }, Word { name: "verbdecay", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set reverb decay", example: "2 verbdecay", compile: Param, varargs: false, }, Word { name: "verbdamp", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set reverb damping", example: "0.5 verbdamp", compile: Param, varargs: false, }, Word { name: "verbpredelay", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set reverb predelay", example: "0.02 verbpredelay", compile: Param, varargs: false, }, Word { name: "verbdiff", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set reverb diffusion", example: "0.7 verbdiff", compile: Param, varargs: false, }, Word { name: "size", aliases: &[], category: "Reverb", stack: "(f --)", desc: "Set size", example: "1 size", compile: Param, varargs: false, }, // Delay Word { name: "delay", aliases: &[], category: "Delay", stack: "(f --)", desc: "Set delay mix", example: "0.3 delay", compile: Param, varargs: false, }, Word { name: "delaytime", aliases: &[], category: "Delay", stack: "(f --)", desc: "Set delay time", example: "0.25 delaytime", compile: Param, varargs: false, }, Word { name: "delayfeedback", aliases: &[], category: "Delay", stack: "(f --)", desc: "Set delay feedback", example: "0.5 delayfeedback", compile: Param, varargs: false, }, Word { name: "delaytype", aliases: &[], category: "Delay", stack: "(n --)", desc: "Set delay type", example: "1 delaytype", compile: Param, varargs: false, }, // Lo-fi Word { name: "crush", aliases: &[], category: "Lo-fi", stack: "(f --)", desc: "Set bit crush", example: "8 crush", compile: Param, varargs: false, }, Word { name: "fold", aliases: &[], category: "Lo-fi", stack: "(f --)", desc: "Set wave fold", example: "2 fold", compile: Param, varargs: false, }, Word { name: "wrap", aliases: &[], category: "Lo-fi", stack: "(f --)", desc: "Set wave wrap", example: "0.5 wrap", compile: Param, varargs: false, }, Word { name: "distort", aliases: &[], category: "Lo-fi", stack: "(f --)", desc: "Set distortion", example: "0.5 distort", compile: Param, varargs: false, }, Word { name: "distortvol", aliases: &[], category: "Lo-fi", stack: "(f --)", desc: "Set distortion volume", example: "0.8 distortvol", compile: Param, varargs: false, }, // Stereo Word { name: "pan", aliases: &[], category: "Stereo", stack: "(f --)", desc: "Set pan (-1 to 1)", example: "0.5 pan", compile: Param, varargs: false, }, Word { name: "width", aliases: &[], category: "Stereo", stack: "(f --)", desc: "Set stereo width (0 mono, 1 normal, 2 wide)", example: "0 width", compile: Param, varargs: false, }, Word { name: "haas", aliases: &[], category: "Stereo", stack: "(f --)", desc: "Set Haas delay in ms (spatial placement)", example: "8 haas", compile: Param, varargs: false, }, // Mod FX Word { name: "phaser", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set phaser rate", example: "1 phaser", compile: Param, varargs: false, }, Word { name: "phaserdepth", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set phaser depth", example: "0.5 phaserdepth", compile: Param, varargs: false, }, Word { name: "phasersweep", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set phaser sweep", example: "0.5 phasersweep", compile: Param, varargs: false, }, Word { name: "phasercenter", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set phaser center", example: "1000 phasercenter", compile: Param, varargs: false, }, Word { name: "flanger", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set flanger rate", example: "0.5 flanger", compile: Param, varargs: false, }, Word { name: "flangerdepth", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set flanger depth", example: "0.5 flangerdepth", compile: Param, varargs: false, }, Word { name: "flangerfeedback", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set flanger feedback", example: "0.5 flangerfeedback", compile: Param, varargs: false, }, Word { name: "chorus", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set chorus rate", example: "1 chorus", compile: Param, varargs: false, }, Word { name: "chorusdepth", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set chorus depth", example: "0.5 chorusdepth", compile: Param, varargs: false, }, Word { name: "chorusdelay", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set chorus delay", example: "0.02 chorusdelay", compile: Param, varargs: false, }, Word { name: "feedback", aliases: &["fb"], category: "Mod FX", stack: "(f --)", desc: "Set feedback delay level", example: "0.7 feedback", compile: Param, varargs: false, }, Word { name: "fbtime", aliases: &["fbt"], category: "Mod FX", stack: "(f --)", desc: "Set feedback delay time in ms", example: "30 fbtime", compile: Param, varargs: false, }, Word { name: "fbdamp", aliases: &["fbd"], category: "Mod FX", stack: "(f --)", desc: "Set feedback delay damping", example: "0.3 fbdamp", compile: Param, varargs: false, }, Word { name: "fblfo", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set feedback delay LFO rate in Hz", example: "2 fblfo", compile: Param, varargs: false, }, Word { name: "fblfodepth", aliases: &[], category: "Mod FX", stack: "(f --)", desc: "Set feedback delay LFO depth", example: "0.5 fblfodepth", compile: Param, varargs: false, }, Word { name: "fblfoshape", aliases: &[], category: "Mod FX", stack: "(s --)", desc: "Set feedback delay LFO shape", example: "tri fblfoshape", compile: Param, varargs: false, }, ];