diff --git a/JavaScript/JavaScript.sublime-syntax b/JavaScript/JavaScript.sublime-syntax index 7da551fe8f..8649005e42 100644 --- a/JavaScript/JavaScript.sublime-syntax +++ b/JavaScript/JavaScript.sublime-syntax @@ -8,9 +8,9 @@ file_extensions: first_line_match: ^#!/.*\b(node|js)$\n? scope: source.js variables: - identifier: '[_$a-zA-Z][$\w]*' + identifier: '[_$[:alpha:]][_$[:alnum:]]*' func_lookahead: '\s*\b(async\s+)?function\b' - arrow_func_lookahead: '\s*(\basync\s*)?([_$a-zA-Z][$\w]*|\(.*?\))\s*=>' + arrow_func_lookahead: '\s*(\basync\s*)?([_$[:alpha:]][_$[:alnum:]]*|\(.*?\))\s*=>' contexts: main: diff --git a/JavaScript/syntax_test_js.js b/JavaScript/syntax_test_js.js index d2a5a635d6..8169baf504 100644 --- a/JavaScript/syntax_test_js.js +++ b/JavaScript/syntax_test_js.js @@ -500,6 +500,9 @@ var result = 200 / 400 + 500 / // ^ keyword.operator.arithmetic 100; +var π = 3.141592653 +// ^ variable.other.readwrite + var angle = 2*π / count // angle between circles // ^ keyword.operator.arithmetic