diff --git a/syntaxes/mist.tmLanguage.json b/syntaxes/mist.tmLanguage.json index caaacf5..1db187a 100644 --- a/syntaxes/mist.tmLanguage.json +++ b/syntaxes/mist.tmLanguage.json @@ -17,10 +17,12 @@ { "include": "#imports" }, { "include": "#modules" }, { "include": "#struct_literals" }, + { "include": "#method_calls" }, { "include": "#field_access" }, { "include": "#arrow" }, { "include": "#return_arrow" }, { "include": "#functions" }, + { "include": "#path_continuation" }, { "include": "#operators" }, { "include": "#punctuation" }, { "include": "#variables" } @@ -138,6 +140,7 @@ { "match": ",", "name": "punctuation.separator.mist" }, { "match": "[:+]", "name": "keyword.operator.mist" }, { "include": "#field_access" }, + { "include": "#path_continuation" }, { "include": "#generics" } ] } @@ -203,12 +206,24 @@ } ] }, + "method_calls": { + "match": "\\.([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?=\\()", + "captures": { + "1": { "name": "entity.name.function.mist" } + } + }, "field_access": { "match": "\\.([a-zA-Z_][a-zA-Z0-9_]*)\\b", "captures": { "1": { "name": "variable.other.property.mist" } } }, + "path_continuation": { + "match": "::\\s*([a-zA-Z_][a-zA-Z0-9_]*+)(?!\\s*\\()", + "captures": { + "1": { "name": "entity.name.namespace.mist" } + } + }, "arrow": { "match": "=>", "name": "keyword.operator.arrow.mist"