Skip to content

Commit

Permalink
Fix detection of import-export clause when name is $
Browse files Browse the repository at this point in the history
Fixes #665
  • Loading branch information
sheetalkamat committed Sep 10, 2018
1 parent 0aea7e0 commit c90418c
Show file tree
Hide file tree
Showing 5 changed files with 102 additions and 3 deletions.
2 changes: 1 addition & 1 deletion TypeScript.YAML-tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -1138,7 +1138,7 @@ repository:
patterns:
- include: '#comment'
#(default|*|name) as alias
- match: '{{startOfIdentifier}}(?:(\bdefault)|(\*)|(\b{{identifier}}))\s+(as)\s+(?:(\bdefault{{endOfIdentifier}})|(\b{{identifier}}))'
- match: '{{startOfIdentifier}}(?:(\bdefault)|(\*)|(\b{{identifier}}))\s+(as)\s+(?:(default{{endOfIdentifier}})|({{identifier}}))'
captures:
'1': { name: keyword.control.default.ts }
'2': { name: constant.language.import-export-all.ts }
Expand Down
2 changes: 1 addition & 1 deletion TypeScript.tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -3672,7 +3672,7 @@
</dict>
<dict>
<key>match</key>
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(?:(\bdefault)|(\*)|(\b[_$[:alpha:]][_$[:alnum:]]*))\s+(as)\s+(?:(\bdefault(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|(\b[_$[:alpha:]][_$[:alnum:]]*))</string>
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(?:(\bdefault)|(\*)|(\b[_$[:alpha:]][_$[:alnum:]]*))\s+(as)\s+(?:(default(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|([_$[:alpha:]][_$[:alnum:]]*))</string>
<key>captures</key>
<dict>
<key>1</key>
Expand Down
2 changes: 1 addition & 1 deletion TypeScriptReact.tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -3676,7 +3676,7 @@
</dict>
<dict>
<key>match</key>
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(?:(\bdefault)|(\*)|(\b[_$[:alpha:]][_$[:alnum:]]*))\s+(as)\s+(?:(\bdefault(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|(\b[_$[:alpha:]][_$[:alnum:]]*))</string>
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(?:(\bdefault)|(\*)|(\b[_$[:alpha:]][_$[:alnum:]]*))\s+(as)\s+(?:(default(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|([_$[:alpha:]][_$[:alnum:]]*))</string>
<key>captures</key>
<dict>
<key>1</key>
Expand Down
96 changes: 96 additions & 0 deletions tests/baselines/Issue665.baseline.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
original file
-----------------------------------
import * as _ from 'lodash';
import * as $ from 'jquery';
import * as React from 'react';
-----------------------------------

Grammar: TypeScript.tmLanguage
-----------------------------------
>import * as _ from 'lodash';
^^^^^^
source.ts meta.import.ts keyword.control.import.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts constant.language.import-export-all.ts
^
source.ts meta.import.ts
^^
source.ts meta.import.ts keyword.control.as.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts variable.other.readwrite.alias.ts
^
source.ts meta.import.ts
^^^^
source.ts meta.import.ts keyword.control.from.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.begin.ts
^^^^^^
source.ts meta.import.ts string.quoted.single.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.end.ts
^
source.ts punctuation.terminator.statement.ts
>import * as $ from 'jquery';
^^^^^^
source.ts meta.import.ts keyword.control.import.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts constant.language.import-export-all.ts
^
source.ts meta.import.ts
^^
source.ts meta.import.ts keyword.control.as.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts variable.other.readwrite.alias.ts
^
source.ts meta.import.ts
^^^^
source.ts meta.import.ts keyword.control.from.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.begin.ts
^^^^^^
source.ts meta.import.ts string.quoted.single.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.end.ts
^
source.ts punctuation.terminator.statement.ts
>import * as React from 'react';
^^^^^^
source.ts meta.import.ts keyword.control.import.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts constant.language.import-export-all.ts
^
source.ts meta.import.ts
^^
source.ts meta.import.ts keyword.control.as.ts
^
source.ts meta.import.ts
^^^^^
source.ts meta.import.ts variable.other.readwrite.alias.ts
^
source.ts meta.import.ts
^^^^
source.ts meta.import.ts keyword.control.from.ts
^
source.ts meta.import.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.begin.ts
^^^^^
source.ts meta.import.ts string.quoted.single.ts
^
source.ts meta.import.ts string.quoted.single.ts punctuation.definition.string.end.ts
^
source.ts punctuation.terminator.statement.ts
3 changes: 3 additions & 0 deletions tests/cases/Issue665.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import * as _ from 'lodash';
import * as $ from 'jquery';
import * as React from 'react';

0 comments on commit c90418c

Please sign in to comment.