New version name (Version 1.0) for access from the FEEVER website.
[Faustine.git] / interpreter / preprocessor / faust-0.9.47mr3 / syntax-highlighting / codepress / faust.js
1 /*
2 * CodePress regular expressions for Faust syntax highlighting (derived from Java)
3 */
4
5 // Faust
6 Language.syntax = [
7 { input : /\"(.*?)(\"|<br>|<\/P>)/g, output : '<s>"$1$2</s>'}, // strings double quote
8 { input : /\b(component|library|environment|mem|prefix|int|float|rdtable|rwtable|select2|select3|ffunction|fconstant|fvariable|button|checkbox|vslider|hslider|nentry|vbargraph|hbargraph|attach|acos|asin|atan|atan2|cos|sin|tan|exp|log|log10|pow|sqrt|abs|min|max|fmod|remainder|floor|ceil|rint)\b/g, output : '<b>$1</b>'},
9 { input : /\b(process|with|case|seq|par|sum|prod|import|vgroup|hgroup|tgroup|declare)\b/g, output : '<u>$1</u>'},
10 { input : /(&lt;:|:&gt;|,|:)/g, output : '<al>$1</al>'},
11 { input : /(~)/g, output : '<al>$1</al>'},
12 { input : /([^:]|^)\/\/(.*?)(<br|<\/P)/g, output : '$1<i>//$2</i>$3'}, // comments //
13 { input : /\/\*(.*?)\*\//g, output : '<i>/*$1*/</i>' } // comments /* */
14 ]
15
16
17
18 Language.snippets = [
19 // program and definitions
20 { input : 'pr', output : 'process = $0;' },
21 { input : 'im', output : 'import("$0.lib");' },
22 { input : 'co', output : 'component("$0.dsp")' },
23 { input : 'li', output : 'library("$0.dsp")' },
24 { input : 'en', output : 'environment {$0}' },
25 { input : 'wi', output : 'with {$0}' },
26
27 // pattern matching
28 { input : 'ca', output : 'case {$0}' },
29 { input : 'ru', output : '($0) => ...;' },
30
31 // declaration
32 { input : 'de', output : 'declare $0 \t"";' },
33 { input : 'dn', output : 'declare name "$0";' },
34 { input : 'da', output : 'declare author "$0";' },
35 { input : 'dl', output : 'declare license "$0";' },
36 { input : 'dv', output : 'declare version "$0";' },
37
38 // user interface
39 { input : 'bu', output : 'button("$0")' },
40 { input : 'ch', output : 'checkbox("$0")' },
41
42 { input : 'hs', output : 'hslider("$0", 50, 0, 100, 0.1)' },
43 { input : 'vs', output : 'vslider("$0", 50, 0, 100, 0.1)' },
44 { input : 'ne', output : 'nentry ("$0", 50, 0, 100, 0.1)' },
45
46 { input : 'hb', output : 'hbargraph("$0", 0, 100)' },
47 { input : 'vb', output : 'vbargraph("$0", 0, 100)' },
48
49 { input : 'vg', output : 'vgroup("$0", ...)' },
50 { input : 'hg', output : 'hgroup("$0", ...)' },
51 { input : 'tg', output : 'tgroup("$0", ...)' },
52
53 // iterations
54 { input : 'pa', output : 'par(i, $0, ...)' },
55 { input : 'su', output : 'sum(i, $0, ...)' },
56 { input : 'se', output : 'seq(i, $0, ...)' },
57 { input : 'mu', output : 'prod(i, $0, ...)' },
58
59 ]
60
61 Language.complete = [
62 { input : '\'',output : '\'$0\'' },
63 { input : '"', output : '"$0"' },
64 { input : '(', output : '\($0\)' },
65 { input : '[', output : '\[$0\]' },
66 { input : '{', output : '{\n\t$0\n}' }
67 ]
68
69 Language.shortcuts = []