PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.4.0
Code Block Pro – Beautiful Syntax Highlighting v1.4.0
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
code-block-pro / build / shiki / languages / bibtex.tmLanguage.json

bibtex.tmLanguage.json in Code Block Pro – Beautiful Syntax Highlighting 1.4.0, at build/shiki/languages/bibtex.tmLanguage.json

273 lines 6.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 {
2 "information_for_contributors": [
3 "This file has been converted from https://github.com/jlelong/vscode-latex-basics/blob/master/syntaxes/Bibtex.tmLanguage.json",
4 "If you want to provide a fix or improvement, please create a pull request against the original repository.",
5 "Once accepted there, we are happy to receive an update request."
6 ],
7 "version": "https://github.com/jlelong/vscode-latex-basics/commit/b98c2d4911652824fc990f4b26c9c30be59b78a2",
8 "name": "bibtex",
9 "scopeName": "text.bibtex",
10 "comment": "Grammar based on description from http://artis.imag.fr/~Xavier.Decoret/resources/xdkbibtex/bibtex_summary.html#comment\n\t\n\tTODO: Does not support @preamble\n\t",
11 "patterns": [
12 {
13 "begin": "@Comment",
14 "beginCaptures": {
15 "0": {
16 "name": "punctuation.definition.comment.bibtex"
17 }
18 },
19 "end": "$\\n?",
20 "name": "comment.line.at-sign.bibtex"
21 },
22 {
23 "begin": "((@)(?i:string))\\s*(\\{)\\s*([a-zA-Z]*)",
24 "beginCaptures": {
25 "1": {
26 "name": "keyword.other.string-constant.bibtex"
27 },
28 "2": {
29 "name": "punctuation.definition.keyword.bibtex"
30 },
31 "3": {
32 "name": "punctuation.section.string-constant.begin.bibtex"
33 },
34 "4": {
35 "name": "variable.other.bibtex"
36 }
37 },
38 "end": "\\}",
39 "endCaptures": {
40 "0": {
41 "name": "punctuation.section.string-constant.end.bibtex"
42 }
43 },
44 "name": "meta.string-constant.braces.bibtex",
45 "patterns": [
46 {
47 "include": "#string_content"
48 }
49 ]
50 },
51 {
52 "begin": "((@)i(?i::string))\\s*(\\()\\s*([a-zA-Z]*)",
53 "beginCaptures": {
54 "1": {
55 "name": "keyword.other.string-constant.bibtex"
56 },
57 "2": {
58 "name": "punctuation.definition.keyword.bibtex"
59 },
60 "3": {
61 "name": "punctuation.section.string-constant.begin.bibtex"
62 },
63 "4": {
64 "name": "variable.other.bibtex"
65 }
66 },
67 "end": "\\)",
68 "endCaptures": {
69 "0": {
70 "name": "punctuation.section.string-constant.end.bibtex"
71 }
72 },
73 "name": "meta.string-constant.parenthesis.bibtex",
74 "patterns": [
75 {
76 "include": "#string_content"
77 }
78 ]
79 },
80 {
81 "begin": "((@)[a-zA-Z]+)\\s*(\\{)\\s*([^\\s,]*)",
82 "beginCaptures": {
83 "1": {
84 "name": "keyword.other.entry-type.bibtex"
85 },
86 "2": {
87 "name": "punctuation.definition.keyword.bibtex"
88 },
89 "3": {
90 "name": "punctuation.section.entry.begin.bibtex"
91 },
92 "4": {
93 "name": "entity.name.type.entry-key.bibtex"
94 }
95 },
96 "end": "\\}",
97 "endCaptures": {
98 "0": {
99 "name": "punctuation.section.entry.end.bibtex"
100 }
101 },
102 "name": "meta.entry.braces.bibtex",
103 "patterns": [
104 {
105 "begin": "([a-zA-Z0-9\\!\\$\\&\\*\\+\\-\\.\\/\\:\\;\\<\\>\\?\\[\\]\\^\\_\\`\\|]+)\\s*(\\=)",
106 "beginCaptures": {
107 "1": {
108 "name": "support.function.key.bibtex"
109 },
110 "2": {
111 "name": "punctuation.separator.key-value.bibtex"
112 }
113 },
114 "end": "(?=[,}])",
115 "name": "meta.key-assignment.bibtex",
116 "patterns": [
117 {
118 "include": "#string_var"
119 },
120 {
121 "include": "#string_content"
122 },
123 {
124 "include": "#integer"
125 }
126 ]
127 }
128 ]
129 },
130 {
131 "begin": "((@)[a-zA-Z]+)\\s*(\\()\\s*([^\\s,]*)",
132 "beginCaptures": {
133 "1": {
134 "name": "keyword.other.entry-type.bibtex"
135 },
136 "2": {
137 "name": "punctuation.definition.keyword.bibtex"
138 },
139 "3": {
140 "name": "punctuation.section.entry.begin.bibtex"
141 },
142 "4": {
143 "name": "entity.name.type.entry-key.bibtex"
144 }
145 },
146 "end": "\\)",
147 "endCaptures": {
148 "0": {
149 "name": "punctuation.section.entry.end.bibtex"
150 }
151 },
152 "name": "meta.entry.parenthesis.bibtex",
153 "patterns": [
154 {
155 "begin": "([a-zA-Z0-9\\!\\$\\&\\*\\+\\-\\.\\/\\:\\;\\<\\>\\?\\[\\]\\^\\_\\`\\|]+)\\s*(\\=)",
156 "beginCaptures": {
157 "1": {
158 "name": "support.function.key.bibtex"
159 },
160 "2": {
161 "name": "punctuation.separator.key-value.bibtex"
162 }
163 },
164 "end": "(?=[,)])",
165 "name": "meta.key-assignment.bibtex",
166 "patterns": [
167 {
168 "include": "#string_var"
169 },
170 {
171 "include": "#string_content"
172 },
173 {
174 "include": "#integer"
175 }
176 ]
177 }
178 ]
179 },
180 {
181 "begin": "[^@\\n]",
182 "end": "(?=@)",
183 "name": "comment.block.bibtex"
184 }
185 ],
186 "repository": {
187 "integer": {
188 "match": "\\d+",
189 "name": "constant.numeric.bibtex"
190 },
191 "nested_braces": {
192 "begin": "(?<!\\\\)\\{",
193 "beginCaptures": {
194 "0": {
195 "name": "punctuation.definition.group.begin.bibtex"
196 }
197 },
198 "end": "(?<!\\\\)\\}",
199 "endCaptures": {
200 "0": {
201 "name": "punctuation.definition.group.end.bibtex"
202 }
203 },
204 "patterns": [
205 {
206 "include": "#nested_braces"
207 }
208 ]
209 },
210 "string_var": {
211 "match": "(#)?\\s*([a-zA-Z]+)\\s*(#)?",
212 "captures": {
213 "1": {
214 "name": "keyword.operator.bibtex"
215 },
216 "2": {
217 "name": "support.variable.bibtex"
218 },
219 "3": {
220 "name": "keyword.operator.bibtex"
221 }
222 }
223 },
224 "string_content": {
225 "patterns": [
226 {
227 "begin": "\\{",
228 "beginCaptures": {
229 "0": {
230 "name": "punctuation.definition.string.begin.bibtex"
231 }
232 },
233 "end": "(\\})(?=(?:,?\\s*\\}?\\s*\\n)|(?:\\s*#))",
234 "endCaptures": {
235 "1": {
236 "name": "punctuation.definition.string.end.bibtex"
237 }
238 },
239 "patterns": [
240 {
241 "match": "@",
242 "name": "invalid.illegal.at-sign.bibtex"
243 },
244 {
245 "include": "#nested_braces"
246 }
247 ]
248 },
249 {
250 "begin": "\"",
251 "beginCaptures": {
252 "0": {
253 "name": "punctuation.definition.string.begin.bibtex"
254 }
255 },
256 "end": "\"(?=(?:,?\\s*\\}?\\s*\\n)|(?:\\s*#))",
257 "endCaptures": {
258 "0": {
259 "name": "punctuation.definition.string.end.bibtex"
260 }
261 },
262 "patterns": [
263 {
264 "match": "@",
265 "name": "invalid.illegal.at-sign.bibtex"
266 }
267 ]
268 }
269 ]
270 }
271 }
272 }
273