-
-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathNote.regex.txt
67 lines (66 loc) · 2.39 KB
/
Note.regex.txt
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
# Matches an ANSI VT520 Note
\e # An Escape
\[ # Followed by a bracket
(?>
(?<Volume>(?<VolumeOff>0) # 0 is no volume
|
(?<VolumeLow>[1-3]) # 1-3 is low volume
|
(?<VolumeHigh>[4-7]) # 4-7 is high volume
))\; # A semicolon separated the volume from the duration
# Duration is measured in 1/32 of a second
(?<Duration>\d+)\; # A semicolon separates the duration from the note
# One or more notes will follow
(?<Notes>(?:(?>
(?<C7>25) # 25 is C in the 7th octave (MIDI 96)
|
(?<B6>24) # 24 is B in the 6th octave (MIDI 95)
|
(?<ASharp6>23) # 23 is A Sharp in the 6th octave (MIDI 94)
|
(?<A6>22) # 22 is A in the 6th octave (MIDI 93)
|
(?<GSharp6>21) # 21 is G Sharp in the 6th octave (MIDI 92)
|
(?<G6>20) # 20 is G in the 6th octave (MIDI 91)
|
(?<FSharp6>19) # 19 is F Sharp in the 6th octave (MIDI 90)
|
(?<F6>18) # 18 is F in the 6th octave (MIDI 89)
|
(?<E6>17) # 17 is E in the 6th octave (MIDI 88)
|
(?<DSharp6>16) # 16 is D Sharp in the 6th octave (MIDI 87)
|
(?<D6>15) # 15 is D in the 6th octave (MIDI 86)
|
(?<CSharp6>14) # 14 is C Sharp in the 6th octave (MIDI 85)
|
(?<C6>13) # 13 is C in the 6th octave (MIDI 84)
|
(?<B5>12) # 12 is B in the 5th octave (MIDI 83)
|
(?<ASharp5>11) # 11 is A Sharp in the 5th octave (MIDI 82)
|
(?<A5>10) # 10 is A in the 5th octave (MIDI 81)
|
(?<GSharp5>9) # 9 is G Sharp in the 5th octave (MIDI 80)
|
(?<G5>8) # 8 is G in the 5th octave (MIDI 79)
|
(?<FSharp5>7) # 7 is F Sharp in the 5th octave (MIDI 78)
|
(?<F5>6) # 6 is F in the 5th octave (MIDI 77)
|
(?<E5>5) # 5 is E in the 5th octave (MIDI 76)
|
(?<DSharp5>4) # 4 is D Sharp in the 5th octave (MIDI 75)
|
(?<D5>3) # 3 is D in the 5th octave (MIDI 74)
|
(?<CSharp5>2) # 2 is C Sharp in the 5th octave (MIDI 73)
|
(?<C5>1) # 1 is C in the 5th octave (MIDI 72)
|
(?<Rest>0) # 0 is a rest
)\;?){0,}),~ # A command and a tilda end the sequence