From cd4467000d810e64044ea65c00de8a54fab0c89b Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 14 Mar 2017 01:29:29 +0000 Subject: [PATCH 1/6] feat: allow double or single quote for lang/type TODO: Update capture ranges to reflex changes --- vue.YAML-tmLanguage | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/vue.YAML-tmLanguage b/vue.YAML-tmLanguage index 8b9ef05..1f8c4ba 100644 --- a/vue.YAML-tmLanguage +++ b/vue.YAML-tmLanguage @@ -64,7 +64,7 @@ patterns: match: (\s*)(?!--|>)\S(\s*) - name: text.slm.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="slm(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])slm\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -80,7 +80,7 @@ patterns: - include: text.slm - name: text.jade.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="jade(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])jade\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -96,7 +96,7 @@ patterns: - include: text.jade - name: text.pug.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="pug(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])pug\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -113,7 +113,7 @@ patterns: - name: source.stylus.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="stylus(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])stylus\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -129,7 +129,7 @@ patterns: - include: source.stylus - name: source.postcss.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="postcss(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])postcss\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -145,7 +145,7 @@ patterns: - include: source.postcss - name: source.sass.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="(?:sass)(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])sass\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -162,7 +162,7 @@ patterns: - include: source.scss - name: source.scss.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="(?:scss)(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])scss\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -180,7 +180,7 @@ patterns: - name: source.less.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="less(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])less\1?") end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -212,7 +212,7 @@ patterns: - include: source.css - name: source.coffee.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang="coffee(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])coffee\1?") beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -230,7 +230,7 @@ patterns: - include: source.coffee - name: source.livescript.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang="livescript(?:\?[^"]*)?") + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])livescript\1?") beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -248,7 +248,7 @@ patterns: - include: source.livescript - name: source.js.embedded.html - begin: (<)((?i:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*type=(['"])text\/(babel|javascript)\1?") beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} From 40baf08cc750e47dce023a02d2d29b3aa011549e Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 30 May 2017 05:11:41 +0100 Subject: [PATCH 2/6] fix: correct pattern match --- vue.YAML-tmLanguage | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/vue.YAML-tmLanguage b/vue.YAML-tmLanguage index 1f8c4ba..40c20f2 100644 --- a/vue.YAML-tmLanguage +++ b/vue.YAML-tmLanguage @@ -64,7 +64,7 @@ patterns: match: (\s*)(?!--|>)\S(\s*) - name: text.slm.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])slm\1?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])slm\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -80,7 +80,7 @@ patterns: - include: text.slm - name: text.jade.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])jade\1?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])jade\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -96,7 +96,7 @@ patterns: - include: text.jade - name: text.pug.embedded.html - begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])pug\1?") + begin: (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])pug\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -113,7 +113,7 @@ patterns: - name: source.stylus.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])stylus\1?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])stylus\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -129,7 +129,7 @@ patterns: - include: source.stylus - name: source.postcss.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])postcss\1?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])postcss\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -145,7 +145,7 @@ patterns: - include: source.postcss - name: source.sass.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])sass\1?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])sass\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -162,7 +162,7 @@ patterns: - include: source.scss - name: source.scss.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])scss\1?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])scss\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -180,7 +180,7 @@ patterns: - name: source.less.embedded.html - begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])less\1?") + begin: (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])less\1?) end: ()(?:\s*\n)? captures: '1': {name: punctuation.definition.tag.begin.html} @@ -212,7 +212,7 @@ patterns: - include: source.css - name: source.coffee.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])coffee\1?") + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])coffee\1?) beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -230,7 +230,7 @@ patterns: - include: source.coffee - name: source.livescript.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])livescript\1?") + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])livescript\1?) beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -248,7 +248,7 @@ patterns: - include: source.livescript - name: source.js.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*type=(['"])text\/(babel|javascript)\1?") + begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*type=(['"])text\/(babel|javascript)\1?) beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -466,5 +466,4 @@ foldingStopMarker: |- |\{\{?/(if|foreach|capture|literal|foreach|php|section|strip) |^[^{]*\} ) - keyEquivalent: ^~H From bdf3f799bcc5948ef5d793712686bcd5efb84f2b Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 30 May 2017 05:23:49 +0100 Subject: [PATCH 3/6] fix: revert unneeded javascript pattern --- vue.YAML-tmLanguage | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vue.YAML-tmLanguage b/vue.YAML-tmLanguage index 40c20f2..281cbc7 100644 --- a/vue.YAML-tmLanguage +++ b/vue.YAML-tmLanguage @@ -248,7 +248,7 @@ patterns: - include: source.livescript - name: source.js.embedded.html - begin: (?:^\s+)?(<)((?i:script))\b(?=[^>]*type=(['"])text\/(babel|javascript)\1?) + begin: (<)((?:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} @@ -466,4 +466,5 @@ foldingStopMarker: |- |\{\{?/(if|foreach|capture|literal|foreach|php|section|strip) |^[^{]*\} ) + keyEquivalent: ^~H From 83700f4b351c4d8383518b7073e8c87217998328 Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 30 May 2017 05:24:46 +0100 Subject: [PATCH 4/6] chore: generate tmLanguage --- vue.tmLanguage | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/vue.tmLanguage b/vue.tmLanguage index 60a7861..380524c 100644 --- a/vue.tmLanguage +++ b/vue.tmLanguage @@ -211,7 +211,7 @@ begin - (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="slm(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])slm\1?) captures 1 @@ -265,7 +265,7 @@ begin - (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="jade(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])jade\1?) captures 1 @@ -319,7 +319,7 @@ begin - (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang="pug(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:template))\b(?=[^>]*lang=(['"])pug\1?) captures 1 @@ -373,7 +373,7 @@ begin - (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="stylus(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])stylus\1?) captures 1 @@ -427,7 +427,7 @@ begin - (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="postcss(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])postcss\1?) captures 1 @@ -481,7 +481,7 @@ begin - (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="(?:sass)(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])sass\1?) captures 1 @@ -539,7 +539,7 @@ begin - (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="(?:scss)(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])scss\1?) captures 1 @@ -597,7 +597,7 @@ begin - (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang="less(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:style))\b(?=[^>]*lang=(['"])less\1?) captures 1 @@ -705,7 +705,7 @@ begin - (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang="coffee(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])coffee\1?) beginCaptures 1 @@ -767,7 +767,7 @@ begin - (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang="livescript(?:\?[^"]*)?") + (?:^\s+)?(<)((?i:script))\b(?=[^>]*lang=(['"])livescript\1?) beginCaptures 1 @@ -829,7 +829,7 @@ begin - (<)((?i:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) + (<)((?:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) beginCaptures 1 From a203f959a95e0e6c67b961bc4e5d6fc4c6371c1a Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 30 May 2017 05:27:50 +0100 Subject: [PATCH 5/6] chore: re-add case-insensitivity --- vue.YAML-tmLanguage | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vue.YAML-tmLanguage b/vue.YAML-tmLanguage index 281cbc7..940a1c7 100644 --- a/vue.YAML-tmLanguage +++ b/vue.YAML-tmLanguage @@ -248,7 +248,7 @@ patterns: - include: source.livescript - name: source.js.embedded.html - begin: (<)((?:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) + begin: (<)((?i:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) beginCaptures: '1': {name: punctuation.definition.tag.begin.html} '2': {name: entity.name.tag.script.html} From 43e1b56aa13fa35878000bf9bc4ebeaae06fb6ef Mon Sep 17 00:00:00 2001 From: James Harris Date: Tue, 30 May 2017 05:48:16 +0100 Subject: [PATCH 6/6] chore: generate tmLanguage --- vue.tmLanguage | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vue.tmLanguage b/vue.tmLanguage index 380524c..42f5f60 100644 --- a/vue.tmLanguage +++ b/vue.tmLanguage @@ -829,7 +829,7 @@ begin - (<)((?:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) + (<)((?i:script))\b(?![^>]*/>)(?![^>]*(?i:type.?=.?text/((?!javascript|babel).*))) beginCaptures 1