@@ -16,7 +16,7 @@ patterns: [
1616 name : ' constant.numeric.flitter'
1717 }
1818 {
19- match : " :[_a-zA-Z][_a-zA-Z0-9] *\\ b"
19+ match : " :[_ \\ p{alpha}][_ \\ p{alnum}]*' *\\ b"
2020 name : " constant.symbol.flitter"
2121 }
2222 {
@@ -31,10 +31,6 @@ patterns: [
3131 match : " \\ $"
3232 name : " keyword.operator.lookup.flitter"
3333 }
34- {
35- match : " \\ ^"
36- name : " keyword.operator.insert.flitter"
37- }
3834 {
3935 match : " ;"
4036 name : " keyword.operator.sequence.flitter"
@@ -48,86 +44,22 @@ patterns: [
4844 name : " keyword.operator.arithmetic.flitter"
4945 }
5046 {
51- begin : " (\"\"\" )"
52- beginCaptures :
53- " 1" :
54- name : " punctuation.definition.string.begin.flitter"
55- end : " ((?<=\"\"\" )(\" )\"\" |\"\"\" )"
56- endCaptures :
57- " 1" :
58- name : " punctuation.definition.string.end.flitter"
59- " 2" :
60- name : " meta.empty-string.double.flitter"
61- name : " string.quoted.double.multi-line.flitter"
62- }
63- {
64- begin : ' (\" )'
65- beginCaptures :
66- ' 1' :
67- name : ' punctuation.definition.string.begin.flitter'
68- end : ' ((?<=\" )(\" )|\" )'
69- endCaptures :
70- ' 1' :
71- name : " punctuation.definition.string.end.flitter"
72- ' 2' :
73- name : " meta.empty-string.double.flitter"
74- name : " string.quoted.double.single-line.flitter"
75- patterns : [
76- {
77- match : ' (\\\\ ")'
78- name : ' constant.character.escape.flitter'
79- }
80- ]
81- }
82- {
83- begin : " (\'\'\' )"
84- beginCaptures :
85- " 1" :
86- name : " punctuation.definition.string.begin.flitter"
87- end : " ((?<=\'\'\' )(\' )\'\' |\'\'\' )"
88- endCaptures :
89- " 1" :
90- name : " punctuation.definition.string.end.flitter"
91- " 2" :
92- name : " meta.empty-string.single.flitter"
93- name : " string.quoted.single.multi-line.flitter"
94- }
95- {
96- begin : " (\' )"
97- beginCaptures :
98- ' 1' :
99- name : ' punctuation.definition.string.begin.flitter'
100- end : " ((?<=\' )(\' )|\' )"
101- endCaptures :
102- ' 1' :
103- name : " punctuation.definition.string.end.flitter"
104- ' 2' :
105- name : " meta.empty-string.single.flitter"
106- name : " string.quoted.single.single-line.flitter"
107- patterns : [
108- {
109- match : " \\\\ '"
110- name : ' constant.character.escape.flitter'
111- }
112- ]
113- }
114- {
115- match : " \\ b(pragma)\\ s+([_a-zA-Z][_a-zA-Z0-9]*)"
47+ match : " \\ b(pragma)\\ s+([_\\ p{alpha}][_\\ p{alnum}]*'*)"
11648 captures :
11749 ' 1' :
11850 name : " keyword.control.flow.flitter"
11951 ' 2' :
12052 name : " constant.pragma.flitter"
12153 }
12254 {
123- match : " \\ b(import)\\ s+([_a-zA-Z][_a-zA-Z0-9]* \\ s*(?:\\ s*;\\ s*[_a-zA-Z][_a-zA-Z0-9] *)*)\\ s+(from)"
55+ match : " \\ b(import)\\ s+([_ \\ p{alpha}][_ \\ p{alnum}]*'* \\ s*(?:\\ s*;\\ s*[_ \\ p{alpha}][_ \\ p{alnum}]*' *)*)\\ s+(from)"
12456 captures :
12557 ' 1' :
12658 name : " keyword.control.flow.flitter"
12759 ' 2' :
12860 patterns : [
12961 {
130- match : " [_a-zA-Z][_a-zA-Z0-9] *"
62+ match : " [_ \\ p{alpha}][_ \\ p{alnum}]*' *"
13163 name : " variable.name.flitter"
13264 }
13365 {
@@ -147,28 +79,24 @@ patterns: [
14779 name : " keyword.operator.logical.flitter"
14880 }
14981 {
150- match : " ![_a-zA-Z][_a-zA-Z0-9] *"
82+ match : " ![_ \\ p{alpha}][_ \\ p{alnum}]*' *"
15183 name : " constant.node.flitter"
15284 }
15385 {
154- match : " @\\ s*[_a-zA-Z][_a-zA-Z0-9] *"
86+ match : " @\\ s*[_ \\ p{alpha}][_ \\ p{alnum}]*' *"
15587 name : " entity.name.function.flitter"
15688 }
15789 {
158- match : " {([^}]*)}"
159- name : " keyword.operator.query.flitter"
160- }
161- {
162- match : " \\ #[_a-zA-Z][_a-zA-Z0-9]*"
90+ match : " \\ #[_\\ p{alpha}][_\\ p{alnum}]*'*"
16391 name : " constant.tag.flitter"
16492 }
16593 {
166- match : " \\ b([_a-zA-Z][_a-zA-Z0-9]* \\ s*(?:\\ s*;\\ s*[_a-zA-Z][_a-zA-Z0-9] *)*)\\ s*(=)(?=[^=])"
94+ match : " \\ b([_ \\ p{alpha}][_ \\ p{alnum}]*'* \\ s*(?:\\ s*;\\ s*[_ \\ p{alpha}][_ \\ p{alnum}]*' *)*)\\ s*(=)(?=[^=])"
16795 captures :
16896 ' 1' :
16997 patterns : [
17098 {
171- match : " [_a-zA-Z][_a-zA-Z0-9] *"
99+ match : " [_ \\ p{alpha}][_ \\ p{alnum}]*' *"
172100 name : " variable.name.flitter"
173101 }
174102 {
@@ -180,14 +108,14 @@ patterns: [
180108 name : " keyword.operator.assignment.flitter"
181109 }
182110 {
183- match : " (for)\\ s+([_a-zA-Z][_a-zA-Z0-9]* \\ s*(?:;\\ s*[_a-zA-Z][_a-zA-Z0-9] *)*)\\ s+(in)"
111+ match : " (for)\\ s+([_ \\ p{alpha}][_ \\ p{alnum}]*'* \\ s*(?:;\\ s*[_ \\ p{alpha}][_ \\ p{alnum}]*' *)*)\\ s+(in)"
184112 captures :
185113 ' 1' :
186114 name : " keyword.control.flow.flitter"
187115 ' 2' :
188116 patterns : [
189117 {
190- match : " [_a-zA-Z][_a-zA-Z0-9] *"
118+ match : " [_ \\ p{alpha}][_ \\ p{alnum}]*' *"
191119 name : " variable.name.flitter"
192120 }
193121 {
@@ -199,15 +127,15 @@ patterns: [
199127 name : " keyword.control.flow.flitter"
200128 }
201129 {
202- match : " \\ b(func)\\ s+([_a-zA-Z][_a-zA-Z0-9] *)"
130+ match : " \\ b(func)\\ s+([_ \\ p{alpha}][_ \\ p{alnum}]*' *)"
203131 captures :
204132 ' 1' :
205133 name : " keyword.control.flow.flitter"
206134 ' 2' :
207135 name : " entity.name.function.flitter"
208136 }
209137 {
210- begin : ' ([_a-zA-Z][_a-zA-Z0-9]* )\\ s*(\\ ()'
138+ begin : " ([_ \\ p{alpha}][_ \\ p{alnum}]*'* )\\ s*(\\ ()"
211139 beginCaptures :
212140 ' 1' :
213141 name : ' entity.name.function.flitter'
@@ -223,4 +151,72 @@ patterns: [
223151 }
224152 ]
225153 }
154+ {
155+ match : " [_\\ p{alpha}][_\\ p{alnum}]*'*"
156+ name : " variable.name.flitter"
157+ }
158+ {
159+ begin : " (\"\"\" )"
160+ beginCaptures :
161+ " 1" :
162+ name : " punctuation.definition.string.begin.flitter"
163+ end : " ((?<=\"\"\" )(\" )\"\" |\"\"\" )"
164+ endCaptures :
165+ " 1" :
166+ name : " punctuation.definition.string.end.flitter"
167+ " 2" :
168+ name : " meta.empty-string.double.flitter"
169+ name : " string.quoted.double.multi-line.flitter"
170+ }
171+ {
172+ begin : ' (\" )'
173+ beginCaptures :
174+ ' 1' :
175+ name : ' punctuation.definition.string.begin.flitter'
176+ end : ' ((?<=\" )(\" )|\" )'
177+ endCaptures :
178+ ' 1' :
179+ name : " punctuation.definition.string.end.flitter"
180+ ' 2' :
181+ name : " meta.empty-string.double.flitter"
182+ name : " string.quoted.double.single-line.flitter"
183+ patterns : [
184+ {
185+ match : ' (\\\\ ")'
186+ name : ' constant.character.escape.flitter'
187+ }
188+ ]
189+ }
190+ {
191+ begin : " (\'\'\' )"
192+ beginCaptures :
193+ " 1" :
194+ name : " punctuation.definition.string.begin.flitter"
195+ end : " ((?<=\'\'\' )(\' )\'\' |\'\'\' )"
196+ endCaptures :
197+ " 1" :
198+ name : " punctuation.definition.string.end.flitter"
199+ " 2" :
200+ name : " meta.empty-string.single.flitter"
201+ name : " string.quoted.single.multi-line.flitter"
202+ }
203+ {
204+ begin : " (\' )"
205+ beginCaptures :
206+ ' 1' :
207+ name : ' punctuation.definition.string.begin.flitter'
208+ end : " ((?<=\' )(\' )|\' )"
209+ endCaptures :
210+ ' 1' :
211+ name : " punctuation.definition.string.end.flitter"
212+ ' 2' :
213+ name : " meta.empty-string.single.flitter"
214+ name : " string.quoted.single.single-line.flitter"
215+ patterns : [
216+ {
217+ match : " \\\\ '"
218+ name : ' constant.character.escape.flitter'
219+ }
220+ ]
221+ }
226222]
0 commit comments