From 4407e8d57037cdb02e5fb670bcf318e0daebb40f Mon Sep 17 00:00:00 2001
From: Matt Bierner <matb@microsoft.com>
Date: Tue, 21 Aug 2018 10:23:27 +0200
Subject: [PATCH 1/4] Allow _ in jsx attribute names

Fixes #648
---
 TypeScriptReact.YAML-tmLanguage        |   4 +-
 TypeScriptReact.tmLanguage             |  22 +++---
 tests/baselines/Issues648.baseline.txt | 103 +++++++++++++++++++++++++
 tests/cases/Issues648.tsx              |   5 ++
 4 files changed, 121 insertions(+), 13 deletions(-)
 create mode 100644 tests/baselines/Issues648.baseline.txt
 create mode 100644 tests/cases/Issues648.tsx

diff --git a/TypeScriptReact.YAML-tmLanguage b/TypeScriptReact.YAML-tmLanguage
index bdad7a02..a22453b9 100644
--- a/TypeScriptReact.YAML-tmLanguage
+++ b/TypeScriptReact.YAML-tmLanguage
@@ -11,7 +11,7 @@ uuid: 805375ec-d614-41f5-8993-5843fe63ea82
 variables:
   #possiblyMultilineArrowExpressionBeforeEndOfLine: ({{typeParameters}})?\(
   possiblyMultilineArrow: ((<\s*$)|([\(]\s*([\{\[]\s*)?$))  # during lookup treat ( followed by line end as arrow
-  jsxTagOrAtrributeIdentifier: '[_$[:alpha:]][-$[:alnum:].]*'
+  jsxTagOrAtrributeIdentifier: '[_$[:alpha:]][-_$[:alnum:].]*'
   jsxTagNamespace: (?:({{jsxTagOrAtrributeIdentifier}})(?<!\.|-)(:))?
   jsxTagName: \s*{{jsxTagNamespace}}((?:[a-z][a-z0-9]*|({{jsxTagOrAtrributeIdentifier}}))(?<!\.|-))
   jsxOpeningTagWithoutAttributes: (<){{jsxTagName}}?\s*(>)
@@ -164,7 +164,7 @@ repository:
       (?x)
         \s*
         (?:({{jsxTagOrAtrributeIdentifier}})(:))?
-        ([_$[:alpha:]][-$[:alnum:]]*)
+        ([_$[:alpha:]][-_$[:alnum:]]*)
         (?=\s|=|/?>|/\*|//)
     captures:
       '1': {name: entity.other.attribute-name.namespace.tsx}
diff --git a/TypeScriptReact.tmLanguage b/TypeScriptReact.tmLanguage
index 8be6dc1d..7ce893f5 100644
--- a/TypeScriptReact.tmLanguage
+++ b/TypeScriptReact.tmLanguage
@@ -8317,9 +8317,9 @@
       <key>jsx-tag-without-attributes-in-expression</key>
       <dict>
         <key>begin</key>
-        <string>(?&lt;!\+\+|--)(?&lt;=[({\[,?=&gt;:*]|&amp;&amp;|\|\||\?|^await|[^\._$[:alnum:]]await|^return|[^\._$[:alnum:]]return|^default|[^\._$[:alnum:]]default|^yield|[^\._$[:alnum:]]yield|^)\s*(?=(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
+        <string>(?&lt;!\+\+|--)(?&lt;=[({\[,?=&gt;:*]|&amp;&amp;|\|\||\?|^await|[^\._$[:alnum:]]await|^return|[^\._$[:alnum:]]return|^default|[^\._$[:alnum:]]default|^yield|[^\._$[:alnum:]]yield|^)\s*(?=(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
         <key>end</key>
-        <string>(?!(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
+        <string>(?!(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
         <key>patterns</key>
         <array>
           <dict>
@@ -8333,9 +8333,9 @@
         <key>name</key>
         <string>meta.tag.without-attributes.tsx</string>
         <key>begin</key>
-        <string>(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;)</string>
+        <string>(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;)</string>
         <key>end</key>
-        <string>(&lt;/)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;)</string>
+        <string>(&lt;/)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;)</string>
         <key>beginCaptures</key>
         <dict>
           <key>1</key>
@@ -8418,9 +8418,9 @@
         <string>(?x)
   (?&lt;!\+\+|--)(?&lt;=[({\[,?=&gt;:*]|&amp;&amp;|\|\||\?|^await|[^\._$[:alnum:]]await|^return|[^\._$[:alnum:]]return|^default|[^\._$[:alnum:]]default|^yield|[^\._$[:alnum:]]yield|^)\s*
   (?!&lt;\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s+[^=&gt;])|,)) # look ahead is not type parameter of arrow
-  (?=(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
+  (?=(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
         <key>end</key>
-        <string>(?!(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
+        <string>(?!(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
         <key>patterns</key>
         <array>
           <dict>
@@ -8434,9 +8434,9 @@
         <key>name</key>
         <string>meta.tag.tsx</string>
         <key>begin</key>
-        <string>(?=(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
+        <string>(?=(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;))</string>
         <key>end</key>
-        <string>(/&gt;)|(?:(&lt;/)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
+        <string>(/&gt;)|(?:(&lt;/)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))?\s*(&gt;))</string>
         <key>endCaptures</key>
         <dict>
           <key>1</key>
@@ -8479,7 +8479,7 @@
         <array>
           <dict>
             <key>begin</key>
-            <string>(&lt;)\s*(?:([_$[:alpha:]][-$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;)</string>
+            <string>(&lt;)\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?&lt;!\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?&lt;!\.|-))(?=((&lt;\s*)|(\s+))(?!\?)|\/?&gt;)</string>
             <key>beginCaptures</key>
             <dict>
               <key>1</key>
@@ -8681,8 +8681,8 @@
         <key>match</key>
         <string>(?x)
   \s*
-  (?:([_$[:alpha:]][-$[:alnum:].]*)(:))?
-  ([_$[:alpha:]][-$[:alnum:]]*)
+  (?:([_$[:alpha:]][-_$[:alnum:].]*)(:))?
+  ([_$[:alpha:]][-_$[:alnum:]]*)
   (?=\s|=|/?&gt;|/\*|//)</string>
         <key>captures</key>
         <dict>
diff --git a/tests/baselines/Issues648.baseline.txt b/tests/baselines/Issues648.baseline.txt
new file mode 100644
index 00000000..b625bc3d
--- /dev/null
+++ b/tests/baselines/Issues648.baseline.txt
@@ -0,0 +1,103 @@
+original file
+-----------------------------------
+<Test
+    a=''
+    b_c='111'
+    d=''
+/>
+-----------------------------------
+
+Grammar: TypeScriptReact.tmLanguage
+-----------------------------------
+><Test
+ ^
+ source.tsx meta.tag.tsx punctuation.definition.tag.begin.tsx
+  ^^^^
+  source.tsx meta.tag.tsx entity.name.tag.tsx support.class.component.tsx
+>    a=''
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+      ^
+      source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+       ^
+       source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>    b_c='111'
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^^^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+         ^
+         source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+          ^^^
+          source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx
+             ^
+             source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>    d=''
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+      ^
+      source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+       ^
+       source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>/>
+ ^^
+ source.tsx meta.tag.tsx punctuation.definition.tag.end.tsx
+
+
+Grammar: TypeScript.tmLanguage
+-----------------------------------
+><Test
+ ^
+ source.ts keyword.operator.relational.ts
+  ^^^^
+  source.ts variable.other.readwrite.ts
+>    a=''
+ ^^^^
+ source.ts
+     ^
+     source.ts variable.other.readwrite.ts
+      ^
+      source.ts keyword.operator.assignment.ts
+       ^
+       source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
+        ^
+        source.ts string.quoted.single.ts punctuation.definition.string.end.ts
+>    b_c='111'
+ ^^^^
+ source.ts
+     ^^^
+     source.ts variable.other.readwrite.ts
+        ^
+        source.ts keyword.operator.assignment.ts
+         ^
+         source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
+          ^^^
+          source.ts string.quoted.single.ts
+             ^
+             source.ts string.quoted.single.ts punctuation.definition.string.end.ts
+>    d=''
+ ^^^^
+ source.ts
+     ^
+     source.ts variable.other.readwrite.ts
+      ^
+      source.ts keyword.operator.assignment.ts
+       ^
+       source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
+        ^
+        source.ts string.quoted.single.ts punctuation.definition.string.end.ts
+>/>
+ ^
+ source.ts keyword.operator.arithmetic.ts
+  ^
+  source.ts keyword.operator.relational.ts
\ No newline at end of file
diff --git a/tests/cases/Issues648.tsx b/tests/cases/Issues648.tsx
new file mode 100644
index 00000000..7c659659
--- /dev/null
+++ b/tests/cases/Issues648.tsx
@@ -0,0 +1,5 @@
+<Test
+    a=''
+    b_c='111'
+    d=''
+/>
\ No newline at end of file

From 1004a7be9ecbf41267588e879a4342b7fa3674b4 Mon Sep 17 00:00:00 2001
From: Matt Bierner <matb@microsoft.com>
Date: Wed, 22 Aug 2018 10:22:28 +0200
Subject: [PATCH 2/4] Add tests for #649

Fixes #649
---
 tests/baselines/Issues649.baseline.txt | 60 ++++++++++++++++++++++++++
 tests/cases/Issues649.tsx              |  6 +++
 2 files changed, 66 insertions(+)
 create mode 100644 tests/baselines/Issues649.baseline.txt
 create mode 100644 tests/cases/Issues649.tsx

diff --git a/tests/baselines/Issues649.baseline.txt b/tests/baselines/Issues649.baseline.txt
new file mode 100644
index 00000000..87c6ee62
--- /dev/null
+++ b/tests/baselines/Issues649.baseline.txt
@@ -0,0 +1,60 @@
+original file
+-----------------------------------
+// @onlyOwnGrammar - As this has jsx
+<Test_Component
+    a=''
+    b_c='111'
+    d=''
+/>
+-----------------------------------
+
+Grammar: TypeScriptReact.tmLanguage
+-----------------------------------
+>// @onlyOwnGrammar - As this has jsx
+ ^^
+ source.tsx comment.line.double-slash.tsx punctuation.definition.comment.tsx
+   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   source.tsx comment.line.double-slash.tsx
+><Test_Component
+ ^
+ source.tsx meta.tag.tsx punctuation.definition.tag.begin.tsx
+  ^^^^^^^^^^^^^^
+  source.tsx meta.tag.tsx entity.name.tag.tsx support.class.component.tsx
+>    a=''
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+      ^
+      source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+       ^
+       source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>    b_c='111'
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^^^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+         ^
+         source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+          ^^^
+          source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx
+             ^
+             source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>    d=''
+ ^^^^
+ source.tsx meta.tag.tsx meta.tag.attributes.tsx
+     ^
+     source.tsx meta.tag.tsx meta.tag.attributes.tsx entity.other.attribute-name.tsx
+      ^
+      source.tsx meta.tag.tsx meta.tag.attributes.tsx keyword.operator.assignment.tsx
+       ^
+       source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.begin.tsx
+        ^
+        source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
+>/>
+ ^^
+ source.tsx meta.tag.tsx punctuation.definition.tag.end.tsx
\ No newline at end of file
diff --git a/tests/cases/Issues649.tsx b/tests/cases/Issues649.tsx
new file mode 100644
index 00000000..7f0af9bb
--- /dev/null
+++ b/tests/cases/Issues649.tsx
@@ -0,0 +1,6 @@
+// @onlyOwnGrammar - As this has jsx
+<Test_Component
+    a=''
+    b_c='111'
+    d=''
+/>
\ No newline at end of file

From 7cd136235708fb2e54b6385e42811ff059843b97 Mon Sep 17 00:00:00 2001
From: Matt Bierner <matb@microsoft.com>
Date: Wed, 22 Aug 2018 10:22:45 +0200
Subject: [PATCH 3/4] Mark onlyOwnGrammar

---
 tests/baselines/Issues648.baseline.txt | 57 ++++----------------------
 tests/cases/Issues648.tsx              |  1 +
 2 files changed, 8 insertions(+), 50 deletions(-)

diff --git a/tests/baselines/Issues648.baseline.txt b/tests/baselines/Issues648.baseline.txt
index b625bc3d..86f2decf 100644
--- a/tests/baselines/Issues648.baseline.txt
+++ b/tests/baselines/Issues648.baseline.txt
@@ -1,5 +1,6 @@
 original file
 -----------------------------------
+// @onlyOwnGrammar - As this has jsx
 <Test
     a=''
     b_c='111'
@@ -9,6 +10,11 @@ original file
 
 Grammar: TypeScriptReact.tmLanguage
 -----------------------------------
+>// @onlyOwnGrammar - As this has jsx
+ ^^
+ source.tsx comment.line.double-slash.tsx punctuation.definition.comment.tsx
+   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   source.tsx comment.line.double-slash.tsx
 ><Test
  ^
  source.tsx meta.tag.tsx punctuation.definition.tag.begin.tsx
@@ -51,53 +57,4 @@ Grammar: TypeScriptReact.tmLanguage
         source.tsx meta.tag.tsx meta.tag.attributes.tsx string.quoted.single.tsx punctuation.definition.string.end.tsx
 >/>
  ^^
- source.tsx meta.tag.tsx punctuation.definition.tag.end.tsx
-
-
-Grammar: TypeScript.tmLanguage
------------------------------------
-><Test
- ^
- source.ts keyword.operator.relational.ts
-  ^^^^
-  source.ts variable.other.readwrite.ts
->    a=''
- ^^^^
- source.ts
-     ^
-     source.ts variable.other.readwrite.ts
-      ^
-      source.ts keyword.operator.assignment.ts
-       ^
-       source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
-        ^
-        source.ts string.quoted.single.ts punctuation.definition.string.end.ts
->    b_c='111'
- ^^^^
- source.ts
-     ^^^
-     source.ts variable.other.readwrite.ts
-        ^
-        source.ts keyword.operator.assignment.ts
-         ^
-         source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
-          ^^^
-          source.ts string.quoted.single.ts
-             ^
-             source.ts string.quoted.single.ts punctuation.definition.string.end.ts
->    d=''
- ^^^^
- source.ts
-     ^
-     source.ts variable.other.readwrite.ts
-      ^
-      source.ts keyword.operator.assignment.ts
-       ^
-       source.ts string.quoted.single.ts punctuation.definition.string.begin.ts
-        ^
-        source.ts string.quoted.single.ts punctuation.definition.string.end.ts
->/>
- ^
- source.ts keyword.operator.arithmetic.ts
-  ^
-  source.ts keyword.operator.relational.ts
\ No newline at end of file
+ source.tsx meta.tag.tsx punctuation.definition.tag.end.tsx
\ No newline at end of file
diff --git a/tests/cases/Issues648.tsx b/tests/cases/Issues648.tsx
index 7c659659..b667837e 100644
--- a/tests/cases/Issues648.tsx
+++ b/tests/cases/Issues648.tsx
@@ -1,3 +1,4 @@
+// @onlyOwnGrammar - As this has jsx
 <Test
     a=''
     b_c='111'

From 38aa945970705a8c01bff5bb0c64494abec3414d Mon Sep 17 00:00:00 2001
From: Matt Bierner <matb@microsoft.com>
Date: Thu, 23 Aug 2018 10:33:08 +0200
Subject: [PATCH 4/4] Update tests

---
 tests/baselines/Issues648.baseline.txt | 2 +-
 tests/baselines/Issues649.baseline.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/baselines/Issues648.baseline.txt b/tests/baselines/Issues648.baseline.txt
index 86f2decf..db5284ae 100644
--- a/tests/baselines/Issues648.baseline.txt
+++ b/tests/baselines/Issues648.baseline.txt
@@ -13,7 +13,7 @@ Grammar: TypeScriptReact.tmLanguage
 >// @onlyOwnGrammar - As this has jsx
  ^^
  source.tsx comment.line.double-slash.tsx punctuation.definition.comment.tsx
-   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    source.tsx comment.line.double-slash.tsx
 ><Test
  ^
diff --git a/tests/baselines/Issues649.baseline.txt b/tests/baselines/Issues649.baseline.txt
index 87c6ee62..f7035f55 100644
--- a/tests/baselines/Issues649.baseline.txt
+++ b/tests/baselines/Issues649.baseline.txt
@@ -13,7 +13,7 @@ Grammar: TypeScriptReact.tmLanguage
 >// @onlyOwnGrammar - As this has jsx
  ^^
  source.tsx comment.line.double-slash.tsx punctuation.definition.comment.tsx
-   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    source.tsx comment.line.double-slash.tsx
 ><Test_Component
  ^