grammars/source.js.json in github-linguist-grammars-4.6.0 vs grammars/source.js.json in github-linguist-grammars-4.6.3
- old
+ new
@@ -443,10 +443,43 @@
"include": "#function-params"
}
]
},
{
+ "comment": "match stuff like: Sound.play = (a,b) => { … }",
+ "name": "meta.function.arrow.js",
+ "begin": "([a-zA-Z_?$]*)\\.([a-zA-Z_?$][\\w?$]*)\\s*(=)\\s*(\\()(?=(?:[^\\(\\)]*)?\\)\\s*=>)",
+ "beginCaptures": {
+ "1": {
+ "name": "support.class.js"
+ },
+ "2": {
+ "name": "entity.name.function.js"
+ },
+ "3": {
+ "name": "keyword.operator.js"
+ },
+ "4": {
+ "name": "punctuation.definition.parameters.begin.js"
+ }
+ },
+ "end": "(\\))(\\s*=>)",
+ "endCaptures": {
+ "1": {
+ "name": "punctuation.definition.parameters.end.js"
+ },
+ "2": {
+ "name": "storage.type.arrow.js"
+ }
+ },
+ "patterns": [
+ {
+ "include": "#function-params"
+ }
+ ]
+ },
+ {
"captures": {
"1": {
"name": "keyword.operator.new.js"
},
"2": {
@@ -459,12 +492,19 @@
{
"match": "\\b(console)\\b",
"name": "entity.name.type.object.js.console"
},
{
- "match": "\\.(warn|info|log|error|time|timeEnd|assert)\\b",
- "name": "support.function.js.console"
+ "match": "\\b(\\.)(assert|clear|debug|error|info|log|profile|profileEnd|time|timeEnd|warn)(?=\\()",
+ "captures": {
+ "1": {
+ "name": "meta.delimiter.method.period.js"
+ },
+ "2": {
+ "name": "support.function.js.console"
+ }
+ }
},
{
"include": "#numbers"
},
{
@@ -645,10 +685,10 @@
{
"match": "\\b(Infinity|NaN|undefined)\\b",
"name": "constant.language.js"
},
{
- "begin": "(?<=[\\[=(:+,!]|^|return|&&|\\|\\|)\\s*(/)(?![/*+{}?])(?=.*/)",
+ "begin": "(?<=[\\[=(?:+,!]|^|return|&&|\\|\\|)\\s*(/)(?![/*+{}?])(?=.*/)",
"beginCaptures": {
"1": {
"name": "punctuation.definition.string.begin.js"
}
},
\ No newline at end of file