-
Notifications
You must be signed in to change notification settings - Fork 2
/
extempore.json
82 lines (81 loc) · 2.25 KB
/
extempore.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
{
"Insert XTLang function": {
"prefix": "bf",
"body": [
"(bind-func ${1:name}",
" (lambda ()",
" $0))"
],
"description": "Insert XTLang function"
},
"Temporal Recursion": {
"prefix": "tr",
"body": [
"(define ${1:name}",
" (lambda (beat dur)",
" $0",
" (callback (*metro* (+ beat (* .5 dur))) '$1 (+ beat dur) dur)))",
" ",
"($1 (*metro* 'get-beat 4) 1/4)"
],
"description": "Temporal Recursion"
},
"Play": {
"prefix": "play",
"body": [
"(play ${1:inst} ${2:pitch} ${3:vol} ${4:dur})"
],
"description": "Play"
},
"Midi Play": {
"prefix": "mplay",
"body": [
"(mplay ${1:*mout*} ${2:pitch} ${3:vol} ${4:dur} ${5:chan})"
],
"description": "Midi Play"
},
"Looper": {
"prefix": "loop",
"body": [
"(:> ${1:name} ${2:4} ${3:0}",
" (begin ",
" ${5:(println @1)}",
" #t)",
" `(${4:60 63 67 70}))"
],
"description": "Looper"
},
"Mapped Loop for eval": {
"prefix": "eloop",
"body": [
"(:> ${1:name} ${2:8} ${3:0}",
" (begin",
" (map (lambda (p)",
" ${5:(println p)})",
" (map (lambda (x) (eval x)) @1))",
" #t)",
" `(#(${4:60 63 67})))"
],
"description": "Mapped Looper with evaluation"
},
"Mapped Loop": {
"prefix": "mloop",
"body": [
"(:> ${1:name} ${2:8} ${3:0}",
" (begin",
" (map (lambda (p)",
" ${5:(println p)})",
" @1)",
" #t)",
" `(#(${4:60 63 67})))"
],
"description": "Mapped Looper"
},
"Midi Control Change": {
"prefix": "mcc",
"body": [
"(mcc ${1:*mout*} ${2:CC} ${3:value} ${4:chan})"
],
"description": "Midi Control Change"
}
}