-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUMASM.tmLanguage
More file actions
107 lines (107 loc) · 2.64 KB
/
UMASM.tmLanguage
File metadata and controls
107 lines (107 loc) · 2.64 KB
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>ums</string>
</array>
<key>name</key>
<string>UMASM</string>
<key>patterns</key>
<array>
<dict>
<key>comment</key>
<string>common mistakes</string>
<key>match</key>
<string>\s=\s|r[0-7]\s*?=[^=]|\\n\"</string>
<key>name</key>
<string>invalid.illegal.ums</string>
</dict>
<dict>
<key>comment</key>
<string>registers</string>
<key>match</key>
<string>r[0-7]</string>
<key>name</key>
<string>constant.language.ums</string>
</dict>
<dict>
<key>comment</key>
<string>operators</string>
<key>match</key>
<string>\s*(:=|==|!=|<s|>s|<=s|>=s|\+|\-|\*|\/|nand|&|\||xor|mod|\~)[^(\/\/)]\s*</string>
<key>name</key>
<string>keyword.operator.ums</string>
</dict>
<dict>
<key>comment</key>
<string>parens</string>
<key>match</key>
<string>(\(|\))</string>
<key>name</key>
<string>entity.name.tag.ums</string>
</dict>
<dict>
<key>comment</key>
<string>memory</string>
<key>match</key>
<string>m\[r[0-7]\]\[.*\]</string>
<key>name</key>
<string>support.constant.ums</string>
</dict>
<dict>
<key>comment</key>
<string>keywords</string>
<key>match</key>
<string>\b(if|m|goto|map|segment|nand|xor|string|unmap|input|output|in|program|using|off|here|halt|words|push|pop|on|off|stack)\b</string>
<key>name</key>
<string>keyword.control.ums</string>
</dict>
<dict>
<key>comment</key>
<string>directives 1</string>
<key>match</key>
<string>\.section</string>
<key>name</key>
<string>support.function.ums</string>
</dict>
<dict>
<key>comment</key>
<string>directives 2</string>
<key>match</key>
<string>\.temps|\.data|\.space|\.zero</string>
<key>name</key>
<string>support.type.ums</string>
</dict>
<dict>
<key>comment</key>
<string>label</string>
<key>match</key>
<string>.*?:\n</string>
<key>name</key>
<string>entity.name.function.ums</string>
</dict>
<dict>
<key>comment</key>
<string>literals</string>
<key>match</key>
<string>\s+(0x[a-fA-F0-9]+|\'\\?.\'|\d+|\".+\")</string>
<key>name</key>
<string>support.function.ums</string>
</dict>
<dict>
<key>comment</key>
<string>line comments</string>
<key>match</key>
<string>\/\/.*$</string>
<key>name</key>
<string>comment.line.ums</string>
</dict>
</array>
<key>scopeName</key>
<string>source.ums</string>
<key>uuid</key>
<string>65ef6d90-413b-4b8b-8e97-7ac9a7d19932</string>
</dict>
</plist>