diff --git a/Syntaxes/CoffeeScript (Literate).tmLanguage b/Syntaxes/CoffeeScript (Literate).tmLanguage index 9e96cd8..67fd1bf 100644 --- a/Syntaxes/CoffeeScript (Literate).tmLanguage +++ b/Syntaxes/CoffeeScript (Literate).tmLanguage @@ -558,9 +558,79 @@ 1 name - variable.parameter.function.coffee + punctuation.definition.parameters.begin.coffee 2 + + patterns + + + captures + + 1 + + name + variable.parameter.function.coffee + + 2 + + name + punctuation.separator.key-value.coffee + + 3 + + name + string.quoted.double.coffee + + 4 + + name + punctuation.definition.string.begin.coffee + + 5 + + name + punctuation.definition.string.end.coffee + + 6 + + name + string.quoted.single.coffee + + 7 + + name + punctuation.definition.string.begin.coffee + + 8 + + name + punctuation.definition.string.end.coffee + + + match + ([^()\s,]+)\s+(=)\s+(?:((")[^"]*("))|((')[^']*('))) + + + match + [^()\s,]+ + name + variable.parameter.function.coffee + + + match + , + name + punctuation.separator.arguments.coffee + + + + 3 + + name + punctuation.definition.parameters.begin.coffee + + 4 name storage.type.function.coffee @@ -569,7 +639,7 @@ comment match stuff like: a -> … match - (\([^()]*?\))\s*([=-]>) + (\()([^()]*?)(\))\s*([=-]>) name meta.inline.function.coffee @@ -846,19 +916,89 @@ name entity.name.function.coffee - 4 + 5 name - variable.parameter.function.coffee + punctuation.definition.parameters.begin.coffee - 5 + 6 + + patterns + + + captures + + 1 + + name + variable.parameter.function.coffee + + 2 + + name + punctuation.separator.key-value.coffee + + 3 + + name + string.quoted.double.coffee + + 4 + + name + punctuation.definition.string.begin.coffee + + 5 + + name + punctuation.definition.string.end.coffee + + 6 + + name + string.quoted.single.coffee + + 7 + + name + punctuation.definition.string.begin.coffee + + 8 + + name + punctuation.definition.string.end.coffee + + + match + ([^()\s,]+)\s+(=)\s+(?:((")[^"]*("))|((')[^']*('))) + + + match + [^()\s,]+ + name + variable.parameter.function.coffee + + + match + , + name + punctuation.separator.arguments.coffee + + + + 7 + + name + punctuation.definition.parameters.begin.coffee + + 8 name storage.type.function.coffee match - (\s*)(?=@?[a-zA-Z\$_])(@?[a-zA-Z\$_](\w|\$|:|\.)*\s*(?=[:=](\s*\(.*\))?\s*((=|-)>))) + (\s*)(?=@?[a-zA-Z\$_])(@?[a-zA-Z\$_](\w|\$|:|\.)*\s*(?=[:=](\s*(\()(.*)(\)))?\s*((=|-)>))) name meta.function.coffee diff --git a/Syntaxes/CoffeeScript.tmLanguage b/Syntaxes/CoffeeScript.tmLanguage index 0556c96..ec69df7 100644 --- a/Syntaxes/CoffeeScript.tmLanguage +++ b/Syntaxes/CoffeeScript.tmLanguage @@ -28,9 +28,79 @@ 1 name - variable.parameter.function.coffee + punctuation.definition.parameters.begin.coffee 2 + + patterns + + + captures + + 1 + + name + variable.parameter.function.coffee + + 2 + + name + punctuation.separator.key-value.coffee + + 3 + + name + string.quoted.double.coffee + + 4 + + name + punctuation.definition.string.begin.coffee + + 5 + + name + punctuation.definition.string.end.coffee + + 6 + + name + string.quoted.single.coffee + + 7 + + name + punctuation.definition.string.begin.coffee + + 8 + + name + punctuation.definition.string.end.coffee + + + match + ([^()\s,]+)\s+(=)\s+(?:((")[^"]*("))|((')[^']*('))) + + + match + [^()\s,]+ + name + variable.parameter.function.coffee + + + match + , + name + punctuation.separator.arguments.coffee + + + + 3 + + name + punctuation.definition.parameters.begin.coffee + + 4 name storage.type.function.coffee @@ -39,7 +109,7 @@ comment match stuff like: a -> … match - (\([^()]*?\))\s*([=-]>) + (\()([^()]*?)(\))\s*([=-]>) name meta.inline.function.coffee @@ -325,12 +395,82 @@ name entity.name.function.coffee - 4 + 5 name - variable.parameter.function.coffee + punctuation.definition.parameters.begin.coffee - 5 + 6 + + patterns + + + captures + + 1 + + name + variable.parameter.function.coffee + + 2 + + name + punctuation.separator.key-value.coffee + + 3 + + name + string.quoted.double.coffee + + 4 + + name + punctuation.definition.string.begin.coffee + + 5 + + name + punctuation.definition.string.end.coffee + + 6 + + name + string.quoted.single.coffee + + 7 + + name + punctuation.definition.string.begin.coffee + + 8 + + name + punctuation.definition.string.end.coffee + + + match + ([^()\s,]+)\s+(=)\s+(?:((")[^"]*("))|((')[^']*('))) + + + match + [^()\s,]+ + name + variable.parameter.function.coffee + + + match + , + name + punctuation.separator.arguments.coffee + + + + 7 + + name + punctuation.definition.parameters.begin.coffee + + 8 name storage.type.function.coffee @@ -342,7 +482,7 @@ (?=@?[a-zA-Z\$_]) ( @?[a-zA-Z\$_](\w|\$|:|\.)*\s* - (?=[:=](\s*\(.*\))?\s*([=-]>)) + (?=[:=](\s*(\()(.*)(\)))?\s*([=-]>)) ) name