Update coffeescript grammar

Fixes #36422
This commit is contained in:
Matt Bierner 2017-10-17 12:53:09 -07:00
parent f6ab9915c7
commit 4d09bef3c5

View file

@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-coffee-script/commit/da81e3f537ccbbb70e542fa5af79583eb58ec50b",
"version": "https://github.com/atom/language-coffee-script/commit/8873cbc4e2f3b790603cbe7102d60f41fc82f726",
"scopeName": "source.coffee",
"name": "CoffeeScript",
"fileTypes": [
@ -535,13 +535,13 @@
"arguments": {
"patterns": [
{
"begin": "(?=(@|@?[\\w$]+|[=-]>|\\-\\d|\\[|{|\"|'))|\\(",
"begin": "\\(",
"beginCaptures": {
"0": {
"name": "punctuation.definition.arguments.begin.bracket.round.coffee"
}
},
"end": "\\)|(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|#|$))",
"end": "\\)",
"endCaptures": {
"0": {
"name": "punctuation.definition.arguments.end.bracket.round.coffee"
@ -553,6 +553,16 @@
"include": "$self"
}
]
},
{
"begin": "(?=(@|@?[\\w$]+|[=-]>|\\-\\d|\\[|{|\"|'))",
"end": "(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|\\)|#|$))",
"name": "meta.arguments.coffee",
"patterns": [
{
"include": "$self"
}
]
}
]
},
@ -592,12 +602,52 @@
"function_calls": {
"patterns": [
{
"begin": "(?x)\n(@)?([\\w$]+)\n\\s*\n(?=\\s+(?!(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))(?=(@?[\\w$]+|[=-]>|\\-\\d|\\[|\\{|\"|'))|(?=\\())",
"begin": "(@)?([\\w$]+)(?=\\()",
"beginCaptures": {
"1": {
"name": "variable.other.readwrite.instance.coffee"
},
"2": {
"patterns": [
{
"include": "#function_names"
}
]
}
},
"end": "(?<=\\))",
"name": "meta.function-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
},
{
"begin": "(?x)\n(@)?([\\w$]+)\n\\s*\n(?=\\s+(?!(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))(?=(@?[\\w$]+|[=-]>|\\-\\d|\\[|{|\"|')))",
"beginCaptures": {
"1": {
"name": "variable.other.readwrite.instance.coffee"
},
"2": {
"patterns": [
{
"include": "#function_names"
}
]
}
},
"end": "(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|\\)|#|$))",
"name": "meta.function-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
}
]
},
"function_names": {
"patterns": [
{
"match": "(?x)\n\\b(isNaN|isFinite|eval|uneval|parseInt|parseFloat|decodeURI|\ndecodeURIComponent|encodeURI|encodeURIComponent|escape|unescape|\nrequire|set(Interval|Timeout)|clear(Interval|Timeout))\\b",
@ -612,17 +662,6 @@
"name": "invalid.illegal.identifier.coffee"
}
]
}
},
"end": "(?<=\\))|(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|#|$))",
"name": "meta.function-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
}
]
},
"function_params": {
"patterns": [
@ -713,7 +752,7 @@
"method_calls": {
"patterns": [
{
"begin": "(?:(\\.)|(::))\\s*([\\w$]+)\\s*(?=\\s+(?!(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))(?=(@|@?[\\w$]+|[=-]>|\\-\\d|\\[|\\{|\"|'))|(?=\\())",
"begin": "(?:(\\.)|(::))\\s*([\\w$]+)\\s*(?=\\()",
"beginCaptures": {
"1": {
"name": "punctuation.separator.method.period.coffee"
@ -722,6 +761,49 @@
"name": "keyword.operator.prototype.coffee"
},
"3": {
"patterns": [
{
"include": "#method_names"
}
]
}
},
"end": "(?<=\\))",
"name": "meta.method-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
},
{
"begin": "(?:(\\.)|(::))\\s*([\\w$]+)\\s*(?=\\s+(?!(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))(?=(@|@?[\\w$]+|[=-]>|\\-\\d|\\[|{|\"|')))",
"beginCaptures": {
"1": {
"name": "punctuation.separator.method.period.coffee"
},
"2": {
"name": "keyword.operator.prototype.coffee"
},
"3": {
"patterns": [
{
"include": "#method_names"
}
]
}
},
"end": "(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|\\)|#|$))",
"name": "meta.method-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
}
]
},
"method_names": {
"patterns": [
{
"match": "(?x)\n\\bon(Rowsinserted|Rowsdelete|Rowenter|Rowexit|Resize|Resizestart|Resizeend|Reset|\nReadystatechange|Mouseout|Mouseover|Mousedown|Mouseup|Mousemove|\nBefore(cut|deactivate|unload|update|paste|print|editfocus|activate)|\nBlur|Scrolltop|Submit|Select|Selectstart|Selectionchange|Hover|Help|\nChange|Contextmenu|Controlselect|Cut|Cellchange|Clock|Close|Deactivate|\nDatasetchanged|Datasetcomplete|Dataavailable|Drop|Drag|Dragstart|Dragover|\nDragdrop|Dragenter|Dragend|Dragleave|Dblclick|Unload|Paste|Propertychange|Error|\nErrorupdate|Keydown|Keyup|Keypress|Focus|Load|Activate|Afterupdate|Afterprint|Abort)\\b",
@ -744,17 +826,6 @@
"name": "invalid.illegal.identifier.coffee"
}
]
}
},
"end": "(?<=\\))|(?=\\s*(?<![\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\w$]))|(?=\\s*(}|#|$))",
"name": "meta.method-call.coffee",
"patterns": [
{
"include": "#arguments"
}
]
}
]
},
"numbers": {
"patterns": [
@ -813,7 +884,18 @@
"operators": {
"patterns": [
{
"match": "([a-zA-Z$_][\\w$]*)?\\s*(%=|\\+=|-=|\\*=|and=|or=|&&=|\\|\\|=|\\?=|(?<!\\()/=)",
"match": "(?:([a-zA-Z$_][\\w$]*)?\\s+|(?<![\\w$]))(and=|or=)",
"captures": {
"1": {
"name": "variable.assignment.coffee"
},
"2": {
"name": "keyword.operator.assignment.compound.coffee"
}
}
},
{
"match": "([a-zA-Z$_][\\w$]*)?\\s*(%=|\\+=|-=|\\*=|&&=|\\|\\|=|\\?=|(?<!\\()/=)",
"captures": {
"1": {
"name": "variable.assignment.coffee"