Skip to content

Commit 118ce91

Browse files
committed
Refactor regex for syntax colorization
1 parent 9e01f23 commit 118ce91

File tree

1 file changed

+16
-20
lines changed

1 file changed

+16
-20
lines changed

syntaxes/gcode.tmLanguage.json

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"name": "constant.numeric.gcode"
6060
},
6161
{
62-
"match": "[gG][0-9]{1,3}\\.?[0-9]?",
62+
"match": "[gG][0-9]{1,3}(\\.[0-9])?",
6363
"name": "markup.bold.gcode"
6464
},
6565
{
@@ -100,83 +100,79 @@
100100
"speedsfeeds": {
101101
"patterns": [
102102
{
103-
"match": "([sS])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?",
103+
"match": "([sS])(\\d+)?",
104104
"name": "constant.language.gcode"
105105
},
106106
{
107-
"match": "([fF])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
108-
"name": "constant.language.gcode"
109-
},
110-
{
111-
"match": "([eE])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
107+
"match": "([eEfF])(\\d*\\.?\\d+\\.?)?",
112108
"name": "constant.language.gcode"
113109
}
114110
]
115111
},
116112
"prognumbers": {
117113
"patterns": [
118114
{
119-
"match": "[nN][0-9]+",
115+
"match": "([nN])(\\d+)?",
120116
"name": "constant.numeric.gcode"
121117
},
122118
{
123-
"match": "[oO][0-9]{1,5}",
119+
"match": "([oO])(\\d+)?",
124120
"name": "string.regexp.gcode"
125121
},
126122
{
127-
"match": "[pP][0-9]{0,5}",
123+
"match": "([pP])(\\d+)?",
128124
"name": "string.regexp.gcode"
129125
}
130126
]
131127
},
132128
"coords": {
133129
"patterns": [
134130
{
135-
"match": "([xX])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
131+
"match": "([xX])(\\-?\\d?\\.?\\d+\\.?)?",
136132
"name": "string.gcode"
137133
},
138134
{
139-
"match": "([yY])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
135+
"match": "([yY])(\\-?\\d?\\.?\\d+\\.?)?",
140136
"name": "string.gcode"
141137
},
142138
{
143-
"match": "([zZ])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
139+
"match": "([zZ])(\\-?\\d?\\.?\\d+\\.?)?",
144140
"name": "invalid.gcode"
145141
},
146142
{
147-
"match": "([aAbBcC])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
143+
"match": "([aAbBcC])(\\-?\\d?\\.?\\d+\\.?)?",
148144
"name": "constant.character.escape.gcode"
149145
}
150146
]
151147
},
152148
"tools": {
153149
"patterns": [
154150
{
155-
"match": "([dD])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
151+
"match": "([dD])([0-9])*",
156152
"name": "constant.character.gcode"
157153
},
158154
{
159-
"match": "([hH])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
155+
"match": "([hH])([0-9]*)",
160156
"name": "constant.character.gcode"
161157
},
162158
{
163-
"match": "([tT])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
159+
"match": "([tT])([0-9]*)",
164160
"name": "constant.character.gcode"
165161
}
166162
]
167163
},
168164
"modifiers": {
169165
"patterns": [
170166
{
171-
"match": "([iIjJkK])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
167+
"match": "([iIjJkK])(\\-?\\d?\\.?\\d+\\.?)?",
172168
"name": "constant.character.escape.gcode"
173169
},
174170
{
175-
"match": "([qQrR])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
171+
"match": "([qQrR])(\\-?\\d?\\.?\\d+\\.?)?",
176172
"name": "support.constant.math.gcode"
177173
},
178174
{
179-
"match": "([uUwW])(?=-|\\d|\\[|#|\\.)-?(?:\\d+(?:\\.\\d*)|(?:\\.(?:\\d*))?)?",
175+
"match": "([uUwW])(\\-?\\d?\\.?\\d+\\.?)?",
180176
"name": "support.constant.math.gcode"
181177
}
182178
]

0 commit comments

Comments
 (0)