1010 ],
1111 "firstLineMatch" : " <(?i:(!DOCTYPE\\ s*)?html)" ,
1212 "injections" : {
13- "R:text.html - comment.block" : {
13+ "R:text.html - ( comment.block, text.html source) " : {
1414 "comment" : " Use R: to ensure this matches after any other injections." ,
1515 "patterns" : [
1616 {
2424 "name" : " HTML" ,
2525 "patterns" : [
2626 {
27- "begin" : " (<)([a-zA-Z0-9:\\ -]++ )(?=[^>]*></\\ 2>)" ,
27+ "begin" : " (<)([a-zA-Z][a-zA- Z0-9:-]* )(?=[^>]*></\\ 2>)" ,
2828 "beginCaptures" : {
2929 "1" : {
3030 "name" : " punctuation.definition.tag.html"
139139 "include" : " #embedded-code"
140140 },
141141 {
142- "begin" : " (?:^ \\ s +)?(<)(( ?i:style)) \\ b(?![^>]*/> )" ,
143- "captures " : {
142+ "begin" : " (^[ \\ t] +)?(?=<( ?i:style))" ,
143+ "beginCaptures " : {
144144 "1" : {
145- "name" : " punctuation.definition.tag .html"
146- },
147- "2" : {
148- "name " : " entity.name.tag.style.html "
149- },
150- "3 " : {
151- "name" : " punctuation.definition.tag .html"
145+ "name" : " punctuation.whitespace.embedded.leading .html"
146+ }
147+ },
148+ "end " : " (?! \\ G)([ \\ t]*$ \\ n?)? " ,
149+ "endCaptures" : {
150+ "1 " : {
151+ "name" : " punctuation.whitespace.embedded.trailing .html"
152152 }
153153 },
154- "end" : " (</)((?i:style))(>)(?:\\ s*\\ n)?" ,
155154 "patterns" : [
156155 {
157- "include" : " #tag-stuff"
158- },
159- {
160- "contentName" : " source.css.embedded.html" ,
161- "begin" : " (>)" ,
156+ "begin" : " (<)((?i:style))\\ b" ,
162157 "beginCaptures" : {
158+ "0" : {
159+ "name" : " meta.tag.metadata.style.html"
160+ },
163161 "1" : {
164- "name" : " punctuation.definition.tag.html"
162+ "name" : " punctuation.definition.tag.begin.html"
163+ },
164+ "2" : {
165+ "name" : " entity.name.tag.html"
165166 }
166167 },
167- "end" : " (?=</(?i:style))" ,
168+ "end" : " (/>)|((<)/)((?i:style))(>)" ,
169+ "endCaptures" : {
170+ "0" : {
171+ "name" : " meta.tag.metadata.style.html"
172+ },
173+ "1" : {
174+ "name" : " punctuation.definition.tag.end.html"
175+ },
176+ "2" : {
177+ "name" : " punctuation.definition.tag.begin.html"
178+ },
179+ "3" : {
180+ "name" : " source.css"
181+ },
182+ "4" : {
183+ "name" : " entity.name.tag.html"
184+ },
185+ "5" : {
186+ "name" : " punctuation.definition.tag.end.html"
187+ }
188+ },
189+ "name" : " meta.embedded.block.html" ,
168190 "patterns" : [
169191 {
170- "include" : " #embedded-code"
192+ "begin" : " \\ G" ,
193+ "captures" : {
194+ "1" : {
195+ "name" : " punctuation.definition.tag.end.html"
196+ }
197+ },
198+ "end" : " (?=/>)|(>)" ,
199+ "name" : " meta.tag.metadata.style.html" ,
200+ "patterns" : [
201+ {
202+ "include" : " #tag-stuff"
203+ }
204+ ]
171205 },
172206 {
173- "include" : " source.css"
207+ "begin" : " (?!\\ G)" ,
208+ "end" : " (?=</(?i:style))" ,
209+ "name" : " source.css" ,
210+ "patterns" : [
211+ {
212+ "include" : " #embedded-code"
213+ },
214+ {
215+ "include" : " source.css"
216+ }
217+ ]
174218 }
175219 ]
176220 }
177221 ]
178222 },
179223 {
180- "begin" : " (?:^ \\ s +)?(<)(( ?i:script)) \\ b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript).*) ))" ,
224+ "begin" : " (^[ \\ t] +)?(?=<( ?i:script))" ,
181225 "beginCaptures" : {
182226 "1" : {
183- "name" : " punctuation.definition.tag.html"
184- },
185- "2" : {
186- "name" : " entity.name.tag.script.html"
227+ "name" : " punctuation.whitespace.embedded.leading.html"
187228 }
188229 },
189- "end" : " (?<=</(script|SCRIPT))(>)(?: \\ s* \\ n)?" ,
230+ "end" : " (?! \\ G)([ \\ t]*$ \\ n? )?" ,
190231 "endCaptures" : {
191- "2 " : {
192- "name" : " punctuation.definition.tag .html"
232+ "1 " : {
233+ "name" : " punctuation.whitespace.embedded.trailing .html"
193234 }
194235 },
195236 "patterns" : [
196237 {
197- "include" : " #tag-stuff"
198- },
199- {
200- "contentName" : " source.js.embedded.html" ,
201- "begin" : " (?<!</(?:script|SCRIPT))(>)" ,
202- "captures" : {
238+ "begin" : " (<)((?i:script))\\ b" ,
239+ "beginCaptures" : {
240+ "0" : {
241+ "name" : " meta.tag.metadata.script.html"
242+ },
203243 "1" : {
204- "name" : " punctuation.definition.tag.html"
244+ "name" : " punctuation.definition.tag.begin. html"
205245 },
206246 "2" : {
207- "name" : " entity.name.tag.script. html"
247+ "name" : " entity.name.tag.html"
208248 }
209249 },
210- "end" : " (</)((?i:script))" ,
211- "patterns" : [
212- {
213- "captures" : {
214- "1" : {
215- "name" : " punctuation.definition.comment.js"
216- }
217- },
218- "match" : " (//).*?((?=</script)|$\\ n?)" ,
219- "name" : " comment.line.double-slash.js"
250+ "end" : " (/>)|(/)((?i:script))(>)" ,
251+ "endCaptures" : {
252+ "0" : {
253+ "name" : " meta.tag.metadata.script.html"
220254 },
221- {
222- "begin" : " /\\ *" ,
223- "captures" : {
224- "0" : {
225- "name" : " punctuation.definition.comment.js"
226- }
227- },
228- "end" : " \\ */|(?=</script)" ,
229- "name" : " comment.block.js"
255+ "1" : {
256+ "name" : " punctuation.definition.tag.end.html"
230257 },
258+ "2" : {
259+ "name" : " punctuation.definition.tag.begin.html"
260+ },
261+ "3" : {
262+ "name" : " entity.name.tag.html"
263+ },
264+ "4" : {
265+ "name" : " punctuation.definition.tag.end.html"
266+ }
267+ },
268+ "name" : " meta.embedded.block.html" ,
269+ "patterns" : [
231270 {
232- "include" : " source.js"
271+ "begin" : " \\ G" ,
272+ "end" : " (?=/>|/)" ,
273+ "patterns" : [
274+ {
275+ "begin" : " (>)" ,
276+ "beginCaptures" : {
277+ "0" : {
278+ "name" : " meta.tag.metadata.script.html"
279+ },
280+ "1" : {
281+ "name" : " punctuation.definition.tag.end.html"
282+ }
283+ },
284+ "end" : " ((<))(?=/(?i:script))" ,
285+ "endCaptures" : {
286+ "0" : {
287+ "name" : " meta.tag.metadata.script.html"
288+ },
289+ "1" : {
290+ "name" : " punctuation.definition.tag.begin.html"
291+ },
292+ "2" : {
293+ "name" : " source.js"
294+ }
295+ },
296+ "patterns" : [
297+ {
298+ "begin" : " \\ G" ,
299+ "end" : " (?=</(?i:script))" ,
300+ "name" : " source.js" ,
301+ "patterns" : [
302+ {
303+ "begin" : " (^[ \\ t]+)?(?=//)" ,
304+ "beginCaptures" : {
305+ "1" : {
306+ "name" : " punctuation.whitespace.comment.leading.js"
307+ }
308+ },
309+ "end" : " (?!\\ G)" ,
310+ "patterns" : [
311+ {
312+ "begin" : " //" ,
313+ "beginCaptures" : {
314+ "0" : {
315+ "name" : " punctuation.definition.comment.js"
316+ }
317+ },
318+ "end" : " (?=</script)|\\ n" ,
319+ "name" : " comment.line.double-slash.js"
320+ }
321+ ]
322+ },
323+ {
324+ "begin" : " /\\ *" ,
325+ "captures" : {
326+ "0" : {
327+ "name" : " punctuation.definition.comment.js"
328+ }
329+ },
330+ "end" : " \\ */|(?=</script)" ,
331+ "name" : " comment.block.js"
332+ },
333+ {
334+ "include" : " source.js"
335+ }
336+ ]
337+ }
338+ ]
339+ },
340+ {
341+ "begin" : " \\ G" ,
342+ "end" : " (?i:(?=/?>|type\\ s*=\\ s*('|\" |)(?!text/(javascript|ecmascript)|application/((x-)?javascript|ecmascript))\\ b))" ,
343+ "name" : " meta.tag.metadata.script.html" ,
344+ "patterns" : [
345+ {
346+ "include" : " #tag-stuff"
347+ }
348+ ]
349+ },
350+ {
351+ "begin" : " (?=(?i:type))" ,
352+ "end" : " (<)(?=/(?i:script))" ,
353+ "endCaptures" : {
354+ "0" : {
355+ "name" : " meta.tag.metadata.script.html"
356+ },
357+ "1" : {
358+ "name" : " punctuation.definition.tag.begin.html"
359+ }
360+ },
361+ "patterns" : [
362+ {
363+ "begin" : " \\ G" ,
364+ "end" : " (>)|(?=/>)" ,
365+ "endCaptures" : {
366+ "1" : {
367+ "name" : " punctuation.definition.tag.end.html"
368+ }
369+ },
370+ "name" : " meta.tag.metadata.script.html" ,
371+ "patterns" : [
372+ {
373+ "include" : " #tag-stuff"
374+ }
375+ ]
376+ },
377+ {
378+ "begin" : " (?!\\ G)" ,
379+ "end" : " (?=</(?i:script))" ,
380+ "name" : " source.unknown"
381+ }
382+ ]
383+ }
384+ ]
233385 }
234386 ]
235387 }
236388 ]
237389 },
238390 {
239- "begin" : " (</?)((?i:body|head|html)(?= \\ s| \\\\ |>) )" ,
391+ "begin" : " (</?)((?i:body|head|html)\\ b )" ,
240392 "captures" : {
241393 "1" : {
242394 "name" : " punctuation.definition.tag.html"
254406 ]
255407 },
256408 {
257- "begin" : " (</?)((?i:address|blockquote|dd|div|section|article|aside|header|footer|nav|menu|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|pre)(?= \\ s| \\\\ |>) )" ,
409+ "begin" : " (</?)((?i:address|blockquote|dd|div|section|article|aside|header|footer|nav|menu|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|pre)\\ b )" ,
258410 "beginCaptures" : {
259411 "1" : {
260412 "name" : " punctuation.definition.tag.begin.html"
277429 ]
278430 },
279431 {
280- "begin" : " (</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?= \\ s| \\\\ |> ))" ,
432+ "begin" : " (</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\ b(?!- ))" ,
281433 "beginCaptures" : {
282434 "1" : {
283435 "name" : " punctuation.definition.tag.begin.html"
300452 ]
301453 },
302454 {
303- "begin" : " (</?)([a-zA-Z0-9:\\ -]+ )" ,
455+ "begin" : " (</?)([a-zA-Z][a-zA- Z0-9:-]* )" ,
304456 "beginCaptures" : {
305457 "1" : {
306458 "name" : " punctuation.definition.tag.begin.html"
309461 "name" : " entity.name.tag.other.html"
310462 }
311463 },
312- "end" : " (>)" ,
464+ "end" : " (/? >)" ,
313465 "endCaptures" : {
314466 "1" : {
315467 "name" : " punctuation.definition.tag.end.html"
364516 "python" : {
365517 "begin" : " (?:^\\ s*)<\\ ?python(?!.*\\ ?>)" ,
366518 "end" : " \\ ?>(?:\\ s*$\\ n)?" ,
367- "contentName " : " source.python.embedded.html" ,
519+ "name " : " source.python.embedded.html" ,
368520 "patterns" : [
369521 {
370522 "include" : " source.python"
389541 "begin" : " {{|{" ,
390542 "disabled" : 1 ,
391543 "end" : " }}|}" ,
392- "contentName " : " source.smarty.embedded.html" ,
544+ "name " : " source.smarty.embedded.html" ,
393545 "patterns" : [
394546 {
395547 "include" : " source.smarty"
549701 },
550702 "scopeName" : " text.html.basic" ,
551703 "uuid" : " 17994EC8-6B1D-11D9-AC3A-000D93589AF6" ,
552- "version" : " https://github.com/textmate/html.tmbundle/commit/9f812c89f4990a98391701caa77824c94860538f "
704+ "version" : " https://github.com/textmate/html.tmbundle/commit/d66526c5f6b6080358d7bf648654165a4fabf713 "
553705}
0 commit comments