33 "name" : " Vue" ,
44 "scopeName" : " source.vue" ,
55 "patterns" : [
6+ {
7+ "include" : " #vue-comments"
8+ },
69 {
710 "include" : " text.html.basic#comment"
811 },
439442 }
440443 ]
441444 },
445+ {
446+ "begin" : " ([a-zA-Z0-9:-]+)\\ b(?=[^>]*\\ blang\\ s*=\\ s*(['\" ]?)coffee\\ b\\ 2)" ,
447+ "beginCaptures" : {
448+ "1" : {
449+ "name" : " entity.name.tag.$1.html.vue"
450+ }
451+ },
452+ "end" : " (</)(\\ 1)\\ s*(?=>)" ,
453+ "endCaptures" : {
454+ "1" : {
455+ "name" : " punctuation.definition.tag.begin.html.vue"
456+ },
457+ "2" : {
458+ "name" : " entity.name.tag.$2.html.vue"
459+ }
460+ },
461+ "patterns" : [
462+ {
463+ "include" : " #tag-stuff"
464+ },
465+ {
466+ "begin" : " (?<=>)" ,
467+ "end" : " (?=<\\ /)" ,
468+ "name" : " source.coffee" ,
469+ "patterns" : [
470+ {
471+ "include" : " source.coffee"
472+ }
473+ ]
474+ }
475+ ]
476+ },
442477 {
443478 "begin" : " ([a-zA-Z0-9:-]+)\\ b(?=[^>]*\\ blang\\ s*=\\ s*(['\" ]?)json\\ b\\ 2)" ,
444479 "beginCaptures" : {
953988 ]
954989 },
955990 "vue-directives-original" : {
956- "begin" : " (?:\\ b(v-)|(: )|(@)|(#))(\\ [? )([\\ w \\ -] *)(\\ ]?)(?: \\ .( [\\ w\\ -]*))* " ,
991+ "begin" : " (?:(?:(v-[ \\ w-]+)(:)?)|([: \\ .] )|(@)|(#))(?:(?:( \\ [)([^ \\ ]] *)(\\ ]))|( [\\ w-]+))? " ,
957992 "beginCaptures" : {
958993 "1" : {
959994 "name" : " entity.other.attribute-name.html.vue"
960995 },
961996 "2" : {
962- "name" : " punctuation.attribute-shorthand.bind .html.vue"
997+ "name" : " punctuation.separator.key-value .html.vue"
963998 },
964999 "3" : {
965- "name" : " punctuation.attribute-shorthand.event .html.vue"
1000+ "name" : " punctuation.attribute-shorthand.bind .html.vue"
9661001 },
9671002 "4" : {
968- "name" : " punctuation.attribute-shorthand.slot .html.vue"
1003+ "name" : " punctuation.attribute-shorthand.event .html.vue"
9691004 },
9701005 "5" : {
971- "name" : " punctuation.separator.key-value .html.vue"
1006+ "name" : " punctuation.attribute-shorthand.slot .html.vue"
9721007 },
9731008 "6" : {
974- "name" : " entity.other.attribute-name .html.vue"
1009+ "name" : " punctuation.separator.key-value .html.vue"
9751010 },
9761011 "7" : {
977- "name" : " punctuation.separator.key-value.html.vue"
1012+ "name" : " source.ts.embedded.html.vue" ,
1013+ "patterns" : [
1014+ {
1015+ "include" : " source.ts#expression"
1016+ }
1017+ ]
9781018 },
9791019 "8" : {
980- "name" : " entity.other.attribute-name .html.vue"
1020+ "name" : " punctuation.separator.key-value .html.vue"
9811021 },
9821022 "9" : {
983- "name" : " punctuation.separator.key-value .html.vue"
1023+ "name" : " entity.other.attribute-name .html.vue"
9841024 }
9851025 },
986- "end" : " (?=\\ s*+ [^=\\ s])" ,
1026+ "end" : " (?=\\ s*[^=\\ s])" ,
9871027 "endCaptures" : {
9881028 "1" : {
9891029 "name" : " punctuation.definition.string.end.html.vue"
9901030 }
9911031 },
9921032 "name" : " meta.attribute.directive.vue" ,
9931033 "patterns" : [
1034+ {
1035+ "match" : " (\\ .)([\\ w-]*)" ,
1036+ "1" : {
1037+ "name" : " punctuation.separator.key-value.html.vue"
1038+ },
1039+ "2" : {
1040+ "name" : " entity.other.attribute-name.html.vue"
1041+ }
1042+ },
9941043 {
9951044 "include" : " #vue-directives-expression"
9961045 }
10391088 "name" : " source.ts.embedded.html.vue" ,
10401089 "patterns" : [
10411090 {
1042- "include" : " source.ts"
1091+ "include" : " source.ts#expression "
10431092 }
10441093 ]
10451094 }
10601109 "name" : " source.ts.embedded.html.vue" ,
10611110 "patterns" : [
10621111 {
1063- "include" : " source.ts"
1112+ "include" : " source.ts#expression "
10641113 }
10651114 ]
10661115 }
12251274 "name" : " source.ts.embedded.html.vue" ,
12261275 "patterns" : [
12271276 {
1228- "include" : " source.ts"
1277+ "include" : " source.ts#expression "
12291278 }
12301279 ]
12311280 }
12321281 ]
12331282 }
12341283 ]
1284+ },
1285+ "vue-comments" : {
1286+ "patterns" : [
1287+ {
1288+ "include" : " #vue-comments-key-value"
1289+ }
1290+ ]
1291+ },
1292+ "vue-comments-key-value" : {
1293+ "begin" : " (<!--)\\ s*(@)([\\ w$]+)(?=\\ s)" ,
1294+ "beginCaptures" : {
1295+ "1" : {
1296+ "name" : " punctuation.definition.comment.vue"
1297+ },
1298+ "2" : {
1299+ "name" : " punctuation.definition.block.tag.comment.vue"
1300+ },
1301+ "3" : {
1302+ "name" : " storage.type.class.comment.vue"
1303+ }
1304+ },
1305+ "end" : " (-->)" ,
1306+ "endCaptures" : {
1307+ "1" : {
1308+ "name" : " punctuation.definition.comment.vue"
1309+ }
1310+ },
1311+ "name" : " comment.block.vue" ,
1312+ "patterns" : [
1313+ {
1314+ "include" : " source.json#value"
1315+ }
1316+ ]
12351317 }
12361318 }
12371319}
0 commit comments