Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/crystal/highlights.scm')
| -rw-r--r-- | runtime/queries/crystal/highlights.scm | 301 |
1 files changed, 1 insertions, 300 deletions
diff --git a/runtime/queries/crystal/highlights.scm b/runtime/queries/crystal/highlights.scm index 0845479b..57154286 100644 --- a/runtime/queries/crystal/highlights.scm +++ b/runtime/queries/crystal/highlights.scm @@ -1,300 +1 @@ -[ - "," - ";" - "." - ":" - "*" - "**" -] @punctuation.delimiter - -[ - "alias" - "alignof" - "annotation" - "asm" - "begin" - "case" - "def" - "do" - "end" - "extend" - "forall" - "fun" - "in" - "include" - "instance_alignof" - "instance_sizeof" - "macro" - "of" - "offsetof" - "out" - "pointerof" - "select" - "sizeof" - "then" - "type" - "typeof" - "uninitialized" - "verbatim" - "when" - "with" -] @keyword - -[ - "else" - "elsif" - "if" - "unless" -] @keyword.control.conditional - -[ - "for" - "until" - "while" -] @keyword.control.repeat - -["require"] @keyword.control.import - -[ - "break" - "next" - "return" - "yield" -] @keyword.control.return - -[ - "ensure" - "rescue" -] @keyword.control.exception - -[ - "class" - "enum" - "lib" - "module" - "struct" - "union" -] @keyword.storage.type - -(conditional - [ - "?" - ":" - ] @keyword.control.conditional) - -[ - (private) - (protected) - "abstract" -] @keyword - -(pseudo_constant) @constant.builtin - -; literals -(char - ["'" (literal_content)] @string) - -(char - (escape_sequence) @constant.character.escape) - -(string - ["\"" (literal_content)] @string) - -(string - (escape_sequence) @constant.character.escape) - -(symbol - [ - ":" - ":\"" - "\"" - (literal_content) - ] @string.special.symbol) - -(symbol - (escape_sequence) @constant.character.escape) - -(command - ["`" (literal_content)] @string.special) - -(command - (escape_sequence) @constant.character.escape) - -(regex - "/" @punctuation.bracket) - -(regex - (literal_content) @string.regexp) - -(regex_modifier) @string.special.symbol - -(heredoc_body - (literal_content) @string) - -(heredoc_body - (escape_sequence) @constant.character.escape) - -[ - (heredoc_start) - (heredoc_end) -] @string.symbol - -(integer) @constant.numeric.integer -(float) @constant.numeric.float - -[ - (true) - (false) - (nil) - (self) -] @variable.builtin - -( - (comment)+ @comment.block.documentation - . - [ - (class_def) - (struct_def) - (method_def) - (abstract_method_def) - (macro_def) - (module_def) - (enum_def) - (annotation_def) - (lib_def) - (type_def) - (c_struct_def) - (union_def) - (alias) - (const_assign) - ] -) - -(comment) @comment - -; Operators and punctuation -[ - "=" - "=>" - "->" - "&" - (operator) -] @operator - -[ - "(" - ")" - "[" - "@[" - "]" - "{" - "}" -] @punctuation.bracket - -(index_call - method: (operator) @punctuation.bracket - [ - "]" - "]?" - ] @punctuation.bracket) - -(block - "|" @punctuation.bracket) - -[ - "{%" - "%}" - "{{" - "}}" -] @keyword.directive - -(interpolation - "#{" @punctuation.special - "}" @punctuation.special) - -; TODO: {splat,double_splat,block,fun}_param + rescue param - -; Types - -(nilable_constant - "?" @type) - -(nilable_type - "?" @type) - -(union_type - "|" @operator) - -(annotation - (constant) @attribute) - -(identifier) @variable -(param name: (identifier) @variable.parameter) - -(method_def - name: (identifier) @function.method) - -(macro_def - name: (identifier) @function.method) - -(abstract_method_def - name: (identifier) @function.method) - -(fun_def - name: (identifier) @function.method - real_name: (identifier)? @function.method) - -(macro_var) @variable - -[ - (class_var) - (instance_var) -] @variable.other.member - -(named_expr - name: (identifier) @variable.other.member - ":" @variable.other.member) - -(named_type - name: (identifier) @variable.other.member) - -(underscore) @variable.special - -; function calls - -(call - method: (_) @keyword - arguments: (argument_list - [ - (type_declaration - var: (_) @function.method) - (assign - lhs: (_) @function.method) - (_) @function.method - ]) - (#match? @keyword "^(class_)?(getter|setter|property)[?!]?$")) - -(call - method: (_) @keyword - (#match? @keyword "^(record|is_a\\?|as|as\\?|responds_to\\?|nil\\?|\\!)$")) - -(call - method: (_) @function.method) - -(implicit_object_call - method: (_) @function.method) - -(method_proc - method: (_) @function.method) - -(assign_call - method: (_) @function.method) - -((identifier) @variable.builtin - (#match? @variable.builtin "^(previous_def|super)$")) - -[ - (constant) - (generic_instance_type) - (generic_type) -] @type +; inherits: ruby |