-
Notifications
You must be signed in to change notification settings - Fork 2
/
sprak.YAML-tmLanguage
69 lines (55 loc) · 2.17 KB
/
sprak.YAML-tmLanguage
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
# [PackageDev] target_format: plist, ext: tmLanguage
---
name: Sublime Sprak Syntax
scopeName: source.sprak
fileTypes: [Sprak]
uuid: 2e4fc05e-56be-4036-9f17-8a721250c786
patterns:
- comment: Comment
name: comment.line.sprak
match: (#).*
captures:
'1': { name: punctuation.definition.comment.sprak }
- comment: Keyword
name: keyword.control.sprak
match: \b((end )?if|(end )?select|(resume )?next|case|end|void|close|do|else|for|gosub|goto|loop|on|open|return|then|to|until|while)\b
- comment: Operator
name: keyword.operator.sprak
match: (\+|=|<|>|<>|AND|OR)
- comment: Function
name: support.function.sprak
match: \b(OnHack|OnIntruder|Count|Range|GetIndexes|Remove|RemoveAll|HasIndex|Append|Type|Round|Int|Mod|Info|Random|GetUser|Name|Time|Width|Height|GetHour|GetMinute|Sleep|Quit|CharToInt|IntToChar|ClearText|Print|Say|PlaySound|Pitch|Sin|Cos|PrintS|Input|Line|Text|Rect|DisplayGraphics|Color|Repeat|HSVtoRGB|RGBToHSV|Lines|GetConnections|Slurp|Connect|DisconnectAll|StringContains|MovePerson|ZapPerson|RestoreCode|Broadcast|IsKeyPressed|HasFloppy|LoadData|ClearData|SaveData|BootFromFloppy|SetMhz|EnableAPI|SetMaxTime|Speed|Charisma|Smelliness|Sleepiness|Drunkenness|Drink|Corruption|IsUser|GetRoom|RemoteFunctionCall|Trippy|TurnLeft|TurnRight|FastForward|Move|QuickBoost|Unlock|Lock|Toggle|Blip|GetChannel|SetChannel|TurnOffSound|TurnOnSound|Log|Position|Teleport|SetWorldPosition)\b
- comment: Numeric
name: constant.numeric.sprak
match: \b(\d(\.\d)?)+
- comment: Global
name: constant.global.sprak
match: \b\w+\$
- comment: SUB
name: meta.function.sprak
match: '^(\w+):'
captures:
'1': { name: entity.name.function.sprak }
- comment: Brace, round
name: meta.brace.round.sprak
match: '[\(\)]'
- comment: Brace, curly
name: meta.brace.curly.sprak
match: '[\{\}]'
- comment: Array
name: other.array.sprak
begin: (\w+\()
beginCaptures:
'1': { name: constant.array.sprak }
end: (\))
endCaptures:
'1': { name: constant.array.sprak }
patterns:
- include: $self
- comment: String, double-quoted
name: string.quoted.double.sprak
match: \"[^"]*\"
- comment: String, single-quoted
name: string.quoted.single.sprak
match: \'[^']*\'
...