├── .gitignore
├── LICENSE
├── README.md
├── samples
├── arrow.vue
├── basic.vue
└── langs.vue
├── vue.YAML-tmLanguage
├── vue.sublime-settings
└── vue.tmLanguage
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2013-2016 Evan You
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Vue Syntax Highlight
2 |
3 | **Note:** The `master` branch hosts the `tmLanguage` based implementation that is distributed to Sublime Text build < 3153. It is also used to power GitHub's syntax highlight of `*.vue` files in [linguist](https://github.com/github/linguist).
4 |
5 | For a newer implementation of the syntax that is distributed to build >=3153, See the [new](https://github.com/vuejs/vue-syntax-highlight/tree/new) branch.
6 |
7 | ---
8 |
9 | Sublime Text Syntax highlighting for single-file [Vue.js](http://vuejs.org) components (enabled by [vue-loader](https://github.com/vuejs/vue-loader) or [vueify](https://github.com/vuejs/vueify)).
10 |
11 | 
12 |
13 | ### Install
14 |
15 | - Via Package Control: search for `Vue Syntax Highlight`.
16 | - Manual: clone this repo into your Sublime `Packages` folder.
17 |
18 | **Additional Installation Requirements:** In order to get proper syntax highlighting for pre-processors (e.g. Jade, SASS, CoffeeScript) you will also need to install the corresponding packages for each of them.
19 |
20 | ### Enabling JSX Highlighting
21 |
22 | The `
29 |
30 |
35 |
--------------------------------------------------------------------------------
/samples/langs.vue:
--------------------------------------------------------------------------------
1 |
8 |
9 |
16 |
17 |
23 |
24 |
29 |
30 |
31 | div.app
32 | h1.title This is the app
33 | comp-a(foo="bar", :a=1)
34 | comp-b(bar="baz", :a=234)
35 |
36 |
37 |
42 |
--------------------------------------------------------------------------------
/vue.YAML-tmLanguage:
--------------------------------------------------------------------------------
1 | # [PackageDev] target_format: plist, ext: tmLanguage
2 | ---
3 | name: Vue Component
4 | scopeName: text.html.vue
5 | fileTypes: [vue]
6 | uuid: 5512c10d-4cc5-434c-b8fc-53b912f55ab3
7 |
8 | patterns:
9 | - include: '#vue-interpolations'
10 |
11 | - name: meta.tag.any.html
12 | begin: (<)([a-zA-Z0-9:-]++)(?=[^>]*>\2>)
13 | beginCaptures:
14 | '1': {name: punctuation.definition.tag.begin.html}
15 | '2': {name: entity.name.tag.html}
16 | end: (>)(<)(/)(\2)(>)
17 | endCaptures:
18 | '1': {name: punctuation.definition.tag.end.html}
19 | '2': {name: punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html}
20 | '3': {name: punctuation.definition.tag.begin.html}
21 | '4': {name: entity.name.tag.html}
22 | '5': {name: punctuation.definition.tag.end.html}
23 | patterns:
24 | - include: '#tag-stuff'
25 |
26 | - name: meta.tag.preprocessor.xml.html
27 | begin: (<\?)(xml)
28 | end: (\?>)
29 | captures:
30 | '1': {name: punctuation.definition.tag.html}
31 | '2': {name: entity.name.tag.xml.html}
32 | patterns:
33 | - include: '#tag-generic-attribute'
34 | - include: '#string-double-quoted'
35 | - include: '#string-single-quoted'
36 |
37 | - name: comment.block.html
38 | begin: )$
470 | |<\?(?:php)?.*\b(if|for(each)?|while)\b.+:
471 | |\{\{?(if|foreach|capture|literal|foreach|php|section|strip)
472 | |\{\s*($|\?>\s*$|//|/\*(.*\*/\s*$|(?!.*?\*/)))
473 | )
474 |
475 | foldingStopMarker: |-
476 | (?x)
477 | ((?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|li|form|dl)>
478 | |^(?!.*?$
480 | |<\?(?:php)?.*\bend(if|for(each)?|while)\b
481 | |\{\{?/(if|foreach|capture|literal|foreach|php|section|strip)
482 | |^[^{]*\}
483 | )
484 |
485 | keyEquivalent: ^~H
486 |
--------------------------------------------------------------------------------
/vue.sublime-settings:
--------------------------------------------------------------------------------
1 | {
2 | "extensions":
3 | [
4 | "vue",
5 | "we",
6 | "wpy"
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/vue.tmLanguage:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | fileTypes
6 |
7 | vue
8 |
9 | foldingStartMarker
10 | (?x)
11 | (<(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|li|form|dl)\b.*?>
12 | |<!--(?!.*--\s*>)
13 | |^<!--\ \#tminclude\ (?>.*?-->)$
14 | |<\?(?:php)?.*\b(if|for(each)?|while)\b.+:
15 | |\{\{?(if|foreach|capture|literal|foreach|php|section|strip)
16 | |\{\s*($|\?>\s*$|//|/\*(.*\*/\s*$|(?!.*?\*/)))
17 | )
18 | foldingStopMarker
19 | (?x)
20 | (</(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|li|form|dl)>
21 | |^(?!.*?<!--).*?--\s*>
22 | |^<!--\ end\ tminclude\ -->$
23 | |<\?(?:php)?.*\bend(if|for(each)?|while)\b
24 | |\{\{?/(if|foreach|capture|literal|foreach|php|section|strip)
25 | |^[^{]*\}
26 | )
27 | keyEquivalent
28 | ^~H
29 | name
30 | Vue Component
31 | patterns
32 |
33 |
34 | include
35 | #vue-interpolations
36 |
37 |
38 | begin
39 | (<)([a-zA-Z0-9:-]++)(?=[^>]*></\2>)
40 | beginCaptures
41 |
42 | 1
43 |
44 | name
45 | punctuation.definition.tag.begin.html
46 |
47 | 2
48 |
49 | name
50 | entity.name.tag.html
51 |
52 |
53 | end
54 | (>)(<)(/)(\2)(>)
55 | endCaptures
56 |
57 | 1
58 |
59 | name
60 | punctuation.definition.tag.end.html
61 |
62 | 2
63 |
64 | name
65 | punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html
66 |
67 | 3
68 |
69 | name
70 | punctuation.definition.tag.begin.html
71 |
72 | 4
73 |
74 | name
75 | entity.name.tag.html
76 |
77 | 5
78 |
79 | name
80 | punctuation.definition.tag.end.html
81 |
82 |
83 | name
84 | meta.tag.any.html
85 | patterns
86 |
87 |
88 | include
89 | #tag-stuff
90 |
91 |
92 |
93 |
94 | begin
95 | (<\?)(xml)
96 | captures
97 |
98 | 1
99 |
100 | name
101 | punctuation.definition.tag.html
102 |
103 | 2
104 |
105 | name
106 | entity.name.tag.xml.html
107 |
108 |
109 | end
110 | (\?>)
111 | name
112 | meta.tag.preprocessor.xml.html
113 | patterns
114 |
115 |
116 | include
117 | #tag-generic-attribute
118 |
119 |
120 | include
121 | #string-double-quoted
122 |
123 |
124 | include
125 | #string-single-quoted
126 |
127 |
128 |
129 |
130 | begin
131 | <!--
132 | captures
133 |
134 | 0
135 |
136 | name
137 | punctuation.definition.comment.html
138 |
139 |
140 | end
141 | --\s*>
142 | name
143 | comment.block.html
144 | patterns
145 |
146 |
147 | match
148 | --
149 | name
150 | invalid.illegal.bad-comments-or-CDATA.html
151 |
152 |
153 |
154 |
155 | begin
156 | <!
157 | captures
158 |
159 | 0
160 |
161 | name
162 | punctuation.definition.tag.html
163 |
164 |
165 | end
166 | >
167 | name
168 | meta.tag.sgml.html
169 | patterns
170 |
171 |
172 | begin
173 | (?i:DOCTYPE)
174 | captures
175 |
176 | 1
177 |
178 | name
179 | entity.name.tag.doctype.html
180 |
181 |
182 | end
183 | (?=>)
184 | name
185 | meta.tag.sgml.doctype.html
186 | patterns
187 |
188 |
189 | match
190 | "[^">]*"
191 | name
192 | string.quoted.double.doctype.identifiers-and-DTDs.html
193 |
194 |
195 |
196 |
197 | begin
198 | \[CDATA\[
199 | end
200 | ]](?=>)
201 | name
202 | constant.other.inline-data.html
203 |
204 |
205 | match
206 | (\s*)(?!--|>)\S(\s*)
207 | name
208 | invalid.illegal.bad-comments-or-CDATA.html
209 |
210 |
211 |
212 |
213 | begin
214 | (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])slm\1?)
215 | captures
216 |
217 | 1
218 |
219 | name
220 | punctuation.definition.tag.begin.html
221 |
222 | 2
223 |
224 | name
225 | entity.name.tag.style.html
226 |
227 | 3
228 |
229 | name
230 | punctuation.definition.tag.html
231 |
232 |
233 | end
234 | (</)((?i:template))(>)(?:\s*\n)?
235 | name
236 | text.slm.embedded.html
237 | patterns
238 |
239 |
240 | include
241 | #tag-stuff
242 |
243 |
244 | begin
245 | (>)
246 | beginCaptures
247 |
248 | 1
249 |
250 | name
251 | punctuation.definition.tag.end.html
252 |
253 |
254 | end
255 | (?=</(?i:template))
256 | patterns
257 |
258 |
259 | include
260 | text.slm
261 |
262 |
263 |
264 |
265 |
266 |
267 | begin
268 | (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])jade\1?)
269 | captures
270 |
271 | 1
272 |
273 | name
274 | punctuation.definition.tag.begin.html
275 |
276 | 2
277 |
278 | name
279 | entity.name.tag.style.html
280 |
281 | 3
282 |
283 | name
284 | punctuation.definition.tag.html
285 |
286 |
287 | end
288 | (</)((?i:template))(>)(?:\s*\n)?
289 | name
290 | text.jade.embedded.html
291 | patterns
292 |
293 |
294 | include
295 | #tag-stuff
296 |
297 |
298 | begin
299 | (>)
300 | beginCaptures
301 |
302 | 1
303 |
304 | name
305 | punctuation.definition.tag.end.html
306 |
307 |
308 | end
309 | (?=</(?i:template))
310 | patterns
311 |
312 |
313 | include
314 | text.jade
315 |
316 |
317 |
318 |
319 |
320 |
321 | begin
322 | (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])pug\1?)
323 | captures
324 |
325 | 1
326 |
327 | name
328 | punctuation.definition.tag.begin.html
329 |
330 | 2
331 |
332 | name
333 | entity.name.tag.style.html
334 |
335 | 3
336 |
337 | name
338 | punctuation.definition.tag.html
339 |
340 |
341 | end
342 | (</)((?i:template))(>)(?:\s*\n)?
343 | name
344 | text.pug.embedded.html
345 | patterns
346 |
347 |
348 | include
349 | #tag-stuff
350 |
351 |
352 | begin
353 | (>)
354 | beginCaptures
355 |
356 | 1
357 |
358 | name
359 | punctuation.definition.tag.end.html
360 |
361 |
362 | end
363 | (?=</(?i:template))
364 | patterns
365 |
366 |
367 | include
368 | text.pug
369 |
370 |
371 |
372 |
373 |
374 |
375 | begin
376 | (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])stylus\1?)
377 | captures
378 |
379 | 1
380 |
381 | name
382 | punctuation.definition.tag.begin.html
383 |
384 | 2
385 |
386 | name
387 | entity.name.tag.style.html
388 |
389 | 3
390 |
391 | name
392 | punctuation.definition.tag.html
393 |
394 |
395 | end
396 | (</)((?i:style))(>)(?:\s*\n)?
397 | name
398 | source.stylus.embedded.html
399 | patterns
400 |
401 |
402 | include
403 | #tag-stuff
404 |
405 |
406 | begin
407 | (>)
408 | beginCaptures
409 |
410 | 1
411 |
412 | name
413 | punctuation.definition.tag.end.html
414 |
415 |
416 | end
417 | (?=</(?i:style))
418 | patterns
419 |
420 |
421 | include
422 | source.stylus
423 |
424 |
425 |
426 |
427 |
428 |
429 | begin
430 | (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])postcss\1?)
431 | captures
432 |
433 | 1
434 |
435 | name
436 | punctuation.definition.tag.begin.html
437 |
438 | 2
439 |
440 | name
441 | entity.name.tag.style.html
442 |
443 | 3
444 |
445 | name
446 | punctuation.definition.tag.html
447 |
448 |
449 | end
450 | (</)((?i:style))(>)(?:\s*\n)?
451 | name
452 | source.postcss.embedded.html
453 | patterns
454 |
455 |
456 | include
457 | #tag-stuff
458 |
459 |
460 | begin
461 | (>)
462 | beginCaptures
463 |
464 | 1
465 |
466 | name
467 | punctuation.definition.tag.end.html
468 |
469 |
470 | end
471 | (?=</(?i:style))
472 | patterns
473 |
474 |
475 | include
476 | source.postcss
477 |
478 |
479 |
480 |
481 |
482 |
483 | begin
484 | (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])sass\1?)
485 | captures
486 |
487 | 1
488 |
489 | name
490 | punctuation.definition.tag.begin.html
491 |
492 | 2
493 |
494 | name
495 | entity.name.tag.style.html
496 |
497 | 3
498 |
499 | name
500 | punctuation.definition.tag.html
501 |
502 |
503 | end
504 | (</)((?i:style))(>)(?:\s*\n)?
505 | name
506 | source.sass.embedded.html
507 | patterns
508 |
509 |
510 | include
511 | #tag-stuff
512 |
513 |
514 | begin
515 | (>)
516 | beginCaptures
517 |
518 | 1
519 |
520 | name
521 | punctuation.definition.tag.end.html
522 |
523 |
524 | end
525 | (?=</(?i:style))
526 | patterns
527 |
528 |
529 | include
530 | source.sass
531 |
532 |
533 |
534 |
535 |
536 |
537 | begin
538 | (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])scss\1?)
539 | captures
540 |
541 | 1
542 |
543 | name
544 | punctuation.definition.tag.begin.html
545 |
546 | 2
547 |
548 | name
549 | entity.name.tag.style.html
550 |
551 | 3
552 |
553 | name
554 | punctuation.definition.tag.html
555 |
556 |
557 | end
558 | (</)((?i:style))(>)(?:\s*\n)?
559 | name
560 | source.scss.embedded.html
561 | patterns
562 |
563 |
564 | include
565 | #tag-stuff
566 |
567 |
568 | begin
569 | (>)
570 | beginCaptures
571 |
572 | 1
573 |
574 | name
575 | punctuation.definition.tag.end.html
576 |
577 |
578 | end
579 | (?=</(?i:style))
580 | patterns
581 |
582 |
583 | include
584 | source.css.scss
585 |
586 |
587 |
588 |
589 |
590 |
591 | begin
592 | (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])less\1?)
593 | captures
594 |
595 | 1
596 |
597 | name
598 | punctuation.definition.tag.begin.html
599 |
600 | 2
601 |
602 | name
603 | entity.name.tag.style.html
604 |
605 | 3
606 |
607 | name
608 | punctuation.definition.tag.html
609 |
610 |
611 | end
612 | (</)((?i:style))(>)(?:\s*\n)?
613 | name
614 | source.less.embedded.html
615 | patterns
616 |
617 |
618 | include
619 | #tag-stuff
620 |
621 |
622 | begin
623 | (>)
624 | beginCaptures
625 |
626 | 1
627 |
628 | name
629 | punctuation.definition.tag.end.html
630 |
631 |
632 | end
633 | (?=</(?i:style))
634 | patterns
635 |
636 |
637 | include
638 | source.css.less
639 |
640 |
641 |
642 |
643 |
644 |
645 | begin
646 | (?:^\s+)?(<)((?i:style))\b(?![^>]*/>)
647 | captures
648 |
649 | 1
650 |
651 | name
652 | punctuation.definition.tag.begin.html
653 |
654 | 2
655 |
656 | name
657 | entity.name.tag.style.html
658 |
659 | 3
660 |
661 | name
662 | punctuation.definition.tag.html
663 |
664 |
665 | end
666 | (</)((?i:style))(>)(?:\s*\n)?
667 | name
668 | source.css.embedded.html
669 | patterns
670 |
671 |
672 | include
673 | #tag-stuff
674 |
675 |
676 | begin
677 | (>)
678 | beginCaptures
679 |
680 | 1
681 |
682 | name
683 | punctuation.definition.tag.end.html
684 |
685 |
686 | end
687 | (?=</(?i:style))
688 | patterns
689 |
690 |
691 | include
692 | source.css
693 |
694 |
695 |
696 |
697 |
698 |
699 | begin
700 | (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])ts\1?)
701 | beginCaptures
702 |
703 | 1
704 |
705 | name
706 | punctuation.definition.tag.begin.html
707 |
708 | 2
709 |
710 | name
711 | entity.name.tag.script.html
712 |
713 |
714 | end
715 | (?<=</(script|SCRIPT))(>)(?:\s*\n)?
716 | endCaptures
717 |
718 | 2
719 |
720 | name
721 | punctuation.definition.tag.html
722 |
723 |
724 | name
725 | source.ts.embedded.html
726 | patterns
727 |
728 |
729 | include
730 | #tag-stuff
731 |
732 |
733 | begin
734 | (?<!</(?:script|SCRIPT))(>)
735 | captures
736 |
737 | 1
738 |
739 | name
740 | punctuation.definition.tag.begin.html
741 |
742 | 2
743 |
744 | name
745 | entity.name.tag.script.html
746 |
747 |
748 | end
749 | (</)((?i:script))
750 | patterns
751 |
752 |
753 | include
754 | source.ts
755 |
756 |
757 |
758 |
759 |
760 |
761 | begin
762 | (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])coffee\1?)
763 | beginCaptures
764 |
765 | 1
766 |
767 | name
768 | punctuation.definition.tag.begin.html
769 |
770 | 2
771 |
772 | name
773 | entity.name.tag.script.html
774 |
775 |
776 | end
777 | (?<=</(script|SCRIPT))(>)(?:\s*\n)?
778 | endCaptures
779 |
780 | 2
781 |
782 | name
783 | punctuation.definition.tag.html
784 |
785 |
786 | name
787 | source.coffee.embedded.html
788 | patterns
789 |
790 |
791 | include
792 | #tag-stuff
793 |
794 |
795 | begin
796 | (?<!</(?:script|SCRIPT))(>)
797 | captures
798 |
799 | 1
800 |
801 | name
802 | punctuation.definition.tag.begin.html
803 |
804 | 2
805 |
806 | name
807 | entity.name.tag.script.html
808 |
809 |
810 | end
811 | (</)((?i:script))
812 | patterns
813 |
814 |
815 | include
816 | source.coffee
817 |
818 |
819 |
820 |
821 |
822 |
823 | begin
824 | (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])livescript\1?)
825 | beginCaptures
826 |
827 | 1
828 |
829 | name
830 | punctuation.definition.tag.begin.html
831 |
832 | 2
833 |
834 | name
835 | entity.name.tag.script.html
836 |
837 |
838 | end
839 | (?<=</(script|SCRIPT))(>)(?:\s*\n)?
840 | endCaptures
841 |
842 | 2
843 |
844 | name
845 | punctuation.definition.tag.html
846 |
847 |
848 | name
849 | source.livescript.embedded.html
850 | patterns
851 |
852 |
853 | include
854 | #tag-stuff
855 |
856 |
857 | begin
858 | (?<!</(?:script|SCRIPT))(>)
859 | captures
860 |
861 | 1
862 |
863 | name
864 | punctuation.definition.tag.begin.html
865 |
866 | 2
867 |
868 | name
869 | entity.name.tag.script.html
870 |
871 |
872 | end
873 | (</)((?i:script))
874 | patterns
875 |
876 |
877 | include
878 | source.livescript
879 |
880 |
881 |
882 |
883 |
884 |
885 | begin
886 | (<)((?i:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel|ecmascript).*)))
887 | beginCaptures
888 |
889 | 1
890 |
891 | name
892 | punctuation.definition.tag.begin.html
893 |
894 | 2
895 |
896 | name
897 | entity.name.tag.script.html
898 |
899 |
900 | end
901 | (?<=</(script|SCRIPT))(>)(?:\s*\n)?
902 | endCaptures
903 |
904 | 2
905 |
906 | name
907 | punctuation.definition.tag.html
908 |
909 |
910 | name
911 | source.js.embedded.html
912 | patterns
913 |
914 |
915 | include
916 | #tag-stuff
917 |
918 |
919 | begin
920 | (?<!</(?:script|SCRIPT))(>)
921 | captures
922 |
923 | 1
924 |
925 | name
926 | punctuation.definition.tag.begin.html
927 |
928 | 2
929 |
930 | name
931 | entity.name.tag.script.html
932 |
933 |
934 | end
935 | (</)((?i:script))
936 | patterns
937 |
938 |
939 | captures
940 |
941 | 1
942 |
943 | name
944 | punctuation.definition.comment.js
945 |
946 |
947 | match
948 | (//).*?((?=</script)|$\n?)
949 | name
950 | comment.line.double-slash.js
951 |
952 |
953 | begin
954 | /\*
955 | captures
956 |
957 | 0
958 |
959 | name
960 | punctuation.definition.comment.js
961 |
962 |
963 | end
964 | \*/|(?=</script)
965 | name
966 | comment.block.js
967 |
968 |
969 | include
970 | source.js
971 |
972 |
973 |
974 |
975 |
976 |
977 | begin
978 | (</?)((?i:body|head|html)\b)
979 | captures
980 |
981 | 1
982 |
983 | name
984 | punctuation.definition.tag.begin.html
985 |
986 | 2
987 |
988 | name
989 | entity.name.tag.structure.any.html
990 |
991 |
992 | end
993 | (>)
994 | endCaptures
995 |
996 | 1
997 |
998 | name
999 | punctuation.definition.tag.end.html
1000 |
1001 |
1002 | name
1003 | meta.tag.structure.any.html
1004 | patterns
1005 |
1006 |
1007 | include
1008 | #tag-stuff
1009 |
1010 |
1011 |
1012 |
1013 | begin
1014 | (</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\b)
1015 | beginCaptures
1016 |
1017 | 1
1018 |
1019 | name
1020 | punctuation.definition.tag.begin.html
1021 |
1022 | 2
1023 |
1024 | name
1025 | entity.name.tag.block.any.html
1026 |
1027 |
1028 | end
1029 | (>)
1030 | endCaptures
1031 |
1032 | 1
1033 |
1034 | name
1035 | punctuation.definition.tag.end.html
1036 |
1037 |
1038 | name
1039 | meta.tag.block.any.html
1040 | patterns
1041 |
1042 |
1043 | include
1044 | #tag-stuff
1045 |
1046 |
1047 |
1048 |
1049 | begin
1050 | (</?)((?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)
1051 | beginCaptures
1052 |
1053 | 1
1054 |
1055 | name
1056 | punctuation.definition.tag.begin.html
1057 |
1058 | 2
1059 |
1060 | name
1061 | entity.name.tag.inline.any.html
1062 |
1063 |
1064 | end
1065 | ((?: ?/)?>)
1066 | endCaptures
1067 |
1068 | 1
1069 |
1070 | name
1071 | punctuation.definition.tag.end.html
1072 |
1073 |
1074 | name
1075 | meta.tag.inline.any.html
1076 | patterns
1077 |
1078 |
1079 | include
1080 | #tag-stuff
1081 |
1082 |
1083 |
1084 |
1085 | begin
1086 | (</?)([a-zA-Z0-9:-]+)
1087 | beginCaptures
1088 |
1089 | 1
1090 |
1091 | name
1092 | punctuation.definition.tag.begin.html
1093 |
1094 | 2
1095 |
1096 | name
1097 | entity.name.tag.other.html
1098 |
1099 |
1100 | end
1101 | (>)
1102 | endCaptures
1103 |
1104 | 1
1105 |
1106 | name
1107 | punctuation.definition.tag.end.html
1108 |
1109 |
1110 | name
1111 | meta.tag.other.html
1112 | patterns
1113 |
1114 |
1115 | include
1116 | #tag-stuff
1117 |
1118 |
1119 |
1120 |
1121 | include
1122 | #entities
1123 |
1124 |
1125 | match
1126 | <>
1127 | name
1128 | invalid.illegal.incomplete.html
1129 |
1130 |
1131 | match
1132 | <
1133 | name
1134 | invalid.illegal.bad-angle-bracket.html
1135 |
1136 |
1137 | repository
1138 |
1139 | entities
1140 |
1141 | patterns
1142 |
1143 |
1144 | captures
1145 |
1146 | 1
1147 |
1148 | name
1149 | punctuation.definition.entity.html
1150 |
1151 | 3
1152 |
1153 | name
1154 | punctuation.definition.entity.html
1155 |
1156 |
1157 | match
1158 | (&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)
1159 | name
1160 | constant.character.entity.html
1161 |
1162 |
1163 | match
1164 | &
1165 | name
1166 | invalid.illegal.bad-ampersand.html
1167 |
1168 |
1169 |
1170 | string-double-quoted
1171 |
1172 | begin
1173 | "
1174 | beginCaptures
1175 |
1176 | 0
1177 |
1178 | name
1179 | punctuation.definition.string.begin.html
1180 |
1181 |
1182 | end
1183 | "
1184 | endCaptures
1185 |
1186 | 0
1187 |
1188 | name
1189 | punctuation.definition.string.end.html
1190 |
1191 |
1192 | name
1193 | string.quoted.double.html
1194 | patterns
1195 |
1196 |
1197 | include
1198 | #vue-interpolations
1199 |
1200 |
1201 | include
1202 | #entities
1203 |
1204 |
1205 |
1206 | string-single-quoted
1207 |
1208 | begin
1209 | '
1210 | beginCaptures
1211 |
1212 | 0
1213 |
1214 | name
1215 | punctuation.definition.string.begin.html
1216 |
1217 |
1218 | end
1219 | '
1220 | endCaptures
1221 |
1222 | 0
1223 |
1224 | name
1225 | punctuation.definition.string.end.html
1226 |
1227 |
1228 | name
1229 | string.quoted.single.html
1230 | patterns
1231 |
1232 |
1233 | include
1234 | #vue-interpolations
1235 |
1236 |
1237 | include
1238 | #entities
1239 |
1240 |
1241 |
1242 | tag-generic-attribute
1243 |
1244 | match
1245 | \b([a-zA-Z\-:]+)
1246 | name
1247 | entity.other.attribute-name.html
1248 |
1249 | tag-id-attribute
1250 |
1251 | begin
1252 | \b(id)\b\s*(=)
1253 | captures
1254 |
1255 | 1
1256 |
1257 | name
1258 | entity.other.attribute-name.id.html
1259 |
1260 | 2
1261 |
1262 | name
1263 | punctuation.separator.key-value.html
1264 |
1265 |
1266 | end
1267 | (?<='|")
1268 | name
1269 | meta.attribute-with-value.id.html
1270 | patterns
1271 |
1272 |
1273 | begin
1274 | "
1275 | beginCaptures
1276 |
1277 | 0
1278 |
1279 | name
1280 | punctuation.definition.string.begin.html
1281 |
1282 |
1283 | contentName
1284 | meta.toc-list.id.html
1285 | end
1286 | "
1287 | endCaptures
1288 |
1289 | 0
1290 |
1291 | name
1292 | punctuation.definition.string.end.html
1293 |
1294 |
1295 | name
1296 | string.quoted.double.html
1297 | patterns
1298 |
1299 |
1300 | include
1301 | #vue-interpolations
1302 |
1303 |
1304 | include
1305 | #entities
1306 |
1307 |
1308 |
1309 |
1310 | begin
1311 | '
1312 | beginCaptures
1313 |
1314 | 0
1315 |
1316 | name
1317 | punctuation.definition.string.begin.html
1318 |
1319 |
1320 | contentName
1321 | meta.toc-list.id.html
1322 | end
1323 | '
1324 | endCaptures
1325 |
1326 | 0
1327 |
1328 | name
1329 | punctuation.definition.string.end.html
1330 |
1331 |
1332 | name
1333 | string.quoted.single.html
1334 | patterns
1335 |
1336 |
1337 | include
1338 | #vue-interpolations
1339 |
1340 |
1341 | include
1342 | #entities
1343 |
1344 |
1345 |
1346 |
1347 |
1348 | tag-stuff
1349 |
1350 | patterns
1351 |
1352 |
1353 | include
1354 | #vue-directives
1355 |
1356 |
1357 | include
1358 | #tag-id-attribute
1359 |
1360 |
1361 | include
1362 | #tag-generic-attribute
1363 |
1364 |
1365 | include
1366 | #string-double-quoted
1367 |
1368 |
1369 | include
1370 | #string-single-quoted
1371 |
1372 |
1373 |
1374 | vue-directives
1375 |
1376 | begin
1377 | (?:\b(v-)|(:|@))([a-zA-Z\-]+)(?:\:([a-zA-Z\-]+))?(?:\.([a-zA-Z\-]+))*\s*(=)
1378 | captures
1379 |
1380 | 1
1381 |
1382 | name
1383 | entity.other.attribute-name.html
1384 |
1385 | 2
1386 |
1387 | name
1388 | punctuation.separator.key-value.html
1389 |
1390 | 3
1391 |
1392 | name
1393 | entity.other.attribute-name.html
1394 |
1395 | 4
1396 |
1397 | name
1398 | entity.other.attribute-name.html
1399 |
1400 | 5
1401 |
1402 | name
1403 | entity.other.attribute-name.html
1404 |
1405 | 6
1406 |
1407 | name
1408 | punctuation.separator.key-value.html
1409 |
1410 |
1411 | end
1412 | (?<='|")
1413 | name
1414 | meta.directive.vue
1415 | patterns
1416 |
1417 |
1418 | begin
1419 | "
1420 | beginCaptures
1421 |
1422 | 0
1423 |
1424 | name
1425 | punctuation.definition.string.begin.html
1426 |
1427 |
1428 | end
1429 | "
1430 | endCaptures
1431 |
1432 | 0
1433 |
1434 | name
1435 | punctuation.definition.string.end.html
1436 |
1437 |
1438 | name
1439 | source.directive.vue
1440 | patterns
1441 |
1442 |
1443 | include
1444 | source.js
1445 |
1446 |
1447 |
1448 |
1449 | begin
1450 | '
1451 | beginCaptures
1452 |
1453 | 0
1454 |
1455 | name
1456 | punctuation.definition.string.begin.html
1457 |
1458 |
1459 | end
1460 | '
1461 | endCaptures
1462 |
1463 | 0
1464 |
1465 | name
1466 | punctuation.definition.string.end.html
1467 |
1468 |
1469 | name
1470 | source.directive.vue
1471 | patterns
1472 |
1473 |
1474 | include
1475 | source.js
1476 |
1477 |
1478 |
1479 |
1480 |
1481 | vue-interpolations
1482 |
1483 | patterns
1484 |
1485 |
1486 | begin
1487 | \{\{\{?
1488 | beginCaptures
1489 |
1490 | 0
1491 |
1492 | name
1493 | punctuation.definition.generic.begin.html
1494 |
1495 |
1496 | end
1497 | \}\}\}?
1498 | endCaptures
1499 |
1500 | 0
1501 |
1502 | name
1503 | punctuation.definition.generic.end.html
1504 |
1505 |
1506 | name
1507 | expression.embbeded.vue
1508 | patterns
1509 |
1510 |
1511 | include
1512 | source.js
1513 |
1514 |
1515 |
1516 |
1517 |
1518 |
1519 | scopeName
1520 | text.html.vue
1521 | uuid
1522 | 5512c10d-4cc5-434c-b8fc-53b912f55ab3
1523 |
1524 |
1525 |
--------------------------------------------------------------------------------