Skip to content

Commit 5865add

Browse files
Bump patch version v0.0.30
1 parent ac68c28 commit 5865add

File tree

2 files changed

+253
-1
lines changed

2 files changed

+253
-1
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090
{
9191
"language": "just",
9292
"scopeName": "source.just",
93-
"path": "syntaxes/just.tmLanguage.yaml",
93+
"path": "syntaxes/just.tmLanguage.json",
9494
"embeddedLanguages": {
9595
"meta.embedded.block.js": "javascript",
9696
"meta.embedded.block.lua": "lua",

syntaxes/just.tmLanguage.json

Lines changed: 252 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,252 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3+
"scopeName": "source.just",
4+
"name": "JustLang",
5+
"patterns": [
6+
{ "include": "#interpolate" },
7+
{ "include": "#comments" },
8+
{ "include": "#scripts" },
9+
{ "include": "#strings" },
10+
{ "include": "#assignments" },
11+
{ "include": "#recipeDefinition" },
12+
{ "include": "#keywords" }
13+
],
14+
"repository": {
15+
"comments": {
16+
"patterns": [
17+
{
18+
"name": "comment.line.just",
19+
"match": "^#[^!].*"
20+
}
21+
]
22+
},
23+
"scripts": {
24+
"patterns": [
25+
{ "include": "#scripts_js" },
26+
{ "include": "#scripts_lua" },
27+
{ "include": "#scripts_perl" },
28+
{ "include": "#scripts_ruby" },
29+
{ "include": "#scripts_python" },
30+
{ "include": "#scripts_shell" }
31+
]
32+
},
33+
"scripts_python": {
34+
"patterns": [
35+
{
36+
"name": "markup.fenced_code.block.just",
37+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)(python(?:-?\\d+(?:\\.\\d+)?)?)(?:\\s|$)",
38+
"end": "^$",
39+
"beginCaptures": {
40+
"1": {
41+
"name": "comment.line.shebang.just"
42+
},
43+
"2": {
44+
"name": "keyword.other"
45+
}
46+
},
47+
"contentName": "meta.embedded.block.python",
48+
"patterns": [
49+
{ "include": "source.python" }
50+
]
51+
}
52+
]
53+
},
54+
"scripts_js": {
55+
"patterns": [
56+
{
57+
"name": "markup.fenced_code.block.just",
58+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)(node(?:js)?)(?:\\s|$)",
59+
"end": "^$",
60+
"beginCaptures": {
61+
"1": {
62+
"name": "comment.line.shebang.just"
63+
},
64+
"2": {
65+
"name": "keyword.other"
66+
}
67+
},
68+
"contentName": "meta.embedded.block.javascript",
69+
"patterns": [
70+
{ "include": "source.js" }
71+
]
72+
}
73+
]
74+
},
75+
"scripts_perl": {
76+
"patterns": [
77+
{
78+
"name": "markup.fenced_code.block.just",
79+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)(perl)(?:\\s|$)",
80+
"end": "^$",
81+
"beginCaptures": {
82+
"1": {
83+
"name": "comment.line.shebang.just"
84+
},
85+
"2": {
86+
"name": "keyword.other"
87+
}
88+
},
89+
"contentName": "meta.embedded.block.perl",
90+
"patterns": [
91+
{ "include": "source.perl" }
92+
]
93+
}
94+
]
95+
},
96+
"scripts_ruby": {
97+
"patterns": [
98+
{
99+
"name": "markup.fenced_code.block.just",
100+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)(ruby-?(?:-?\\d+(?:\\.\\d+)?)?)(?:\\s|$)",
101+
"end": "^$",
102+
"beginCaptures": {
103+
"1": {
104+
"name": "comment.line.shebang.just"
105+
},
106+
"2": {
107+
"name": "keyword.other"
108+
}
109+
},
110+
"contentName": "meta.embedded.block.ruby",
111+
"patterns": [
112+
{ "include": "source.ruby" }
113+
]
114+
}
115+
]
116+
},
117+
"scripts_lua": {
118+
"patterns": [
119+
{
120+
"name": "markup.fenced_code.block.just",
121+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)(lua(?:-?\\d+(?:\\.\\d+)?)?)(?:\\s|$)",
122+
"end": "^$",
123+
"beginCaptures": {
124+
"1": {
125+
"name": "comment.line.shebang.just"
126+
},
127+
"2": {
128+
"name": "keyword.other"
129+
}
130+
},
131+
"contentName": "meta.embedded.block.lua",
132+
"patterns": [
133+
{ "include": "source.lua" }
134+
]
135+
}
136+
]
137+
},
138+
"scripts_shell": {
139+
"patterns": [
140+
{
141+
"name": "markup.fenced_code.block.just",
142+
"begin": "^\\s+(#!\\s*(?:/usr)?/bin/(?:env\\s+)?)((?>fi|ba|c|k|z)?sh)(?:\\s|$)",
143+
"end": "^$",
144+
"beginCaptures": {
145+
"1": {
146+
"name": "comment.line.shebang.just"
147+
},
148+
"2": {
149+
"name": "keyword.other"
150+
}
151+
},
152+
"contentName": "meta.embedded.block.shellscript",
153+
"patterns": [
154+
{ "include": "source.shell" }
155+
]
156+
},
157+
{
158+
"name": "markup.inline.raw.just",
159+
"begin": "`",
160+
"end": "`",
161+
"contentName": "meta.embedded.line.shellscript",
162+
"patterns": [
163+
{ "include": "source.shell" }
164+
]
165+
}
166+
]
167+
},
168+
"strings": {
169+
"patterns": [
170+
{
171+
"name": "string.quoted.double.just",
172+
"begin": "\"",
173+
"end": "\""
174+
},
175+
{
176+
"name": "string.quoted.single.just",
177+
"begin": "'",
178+
"end": "'"
179+
}
180+
]
181+
},
182+
"assignments": {
183+
"patterns": [
184+
{
185+
"match": "^((?:export|set)\\s+)?([a-zA-Z_][a-zA-Z0-9_-]*)\\s*:?=",
186+
"captures": {
187+
"1": {
188+
"name": "storage.type.just"
189+
},
190+
"2": {
191+
"name": "variable.name.just"
192+
}
193+
}
194+
}
195+
]
196+
},
197+
"recipeDefinition": {
198+
"patterns": [
199+
{
200+
"match": "^(@)?([a-zA-Z_][a-zA-Z0-9_-]*)([a-zA-Z0-9=\\s_-`'\"]*):([\\sa-zA-Z0-9_-]*).*$",
201+
"captures": {
202+
"1": {
203+
"name": "entity.name.function.just"
204+
},
205+
"2": {
206+
"name": "entity.name.function.just"
207+
},
208+
"3": {
209+
"patterns": [
210+
{
211+
"name": "constant.character.escape.just",
212+
"match": "[\\s]*[a-zA-Z0-9-_]*(=?)(.*)",
213+
"captures": {
214+
"0": {
215+
"name": "variable.name.just"
216+
},
217+
"1": {
218+
"name": "constant.other.just"
219+
},
220+
"2": {
221+
"name": "variable.parameter.just"
222+
}
223+
}
224+
}
225+
]
226+
},
227+
"4": {
228+
"name": "support.type.property-name.just"
229+
}
230+
}
231+
}
232+
]
233+
},
234+
"interpolate": {
235+
"patterns": [
236+
{
237+
"name": "string.interpolated.just",
238+
"begin": "\\{\\{",
239+
"end": "\\}\\}"
240+
}
241+
]
242+
},
243+
"keywords": {
244+
"patterns": [
245+
{
246+
"name": "keyword.control.just",
247+
"match": "\\b(arch|os|os_family|env_var|env_var_or_default)\\b"
248+
}
249+
]
250+
}
251+
}
252+
}

0 commit comments

Comments
 (0)