diff options
| author | Stephan Seitz <stephan.seitz@fau.de> | 2020-05-31 23:32:08 +0200 |
|---|---|---|
| committer | Stephan Seitz <stephan.seitz@fau.de> | 2020-06-07 12:39:58 +0200 |
| commit | 04040c61c7c0c6da77dd87426c68f0afb8344b97 (patch) | |
| tree | 42f9e53d35367d32217523f5428056620ba03712 /queries | |
| parent | cdc92965d65231e3034d1546f4e2fdddcbc9eaa0 (diff) | |
Add highlights.scm for Go
Diffstat (limited to 'queries')
| -rw-r--r-- | queries/go/highlights.scm | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/queries/go/highlights.scm b/queries/go/highlights.scm new file mode 100644 index 00000000..ed046e6d --- /dev/null +++ b/queries/go/highlights.scm @@ -0,0 +1,136 @@ +;; Forked from tree-sitter-go +;; Copyright (c) 2014 Max Brunsfeld (The MIT License) + +;; +; Function calls + +(call_expression + function: (identifier) @function) + +(call_expression + function: (selector_expression + field: (field_identifier) @method)) + +; Function definitions + +(function_declaration + name: (identifier) @function) + +(method_declaration + name: (field_identifier) @method) + +; Identifiers + +(type_identifier) @type +(field_identifier) @property +(identifier) @variable + +(parameter_declaration (identifier) @parameter) +(variadic_parameter_declaration (identifier) @parameter) + +((identifier) @constant + (#eq? @constant "_")) + +((identifier) @constant + (#match? @constant "^[A-Z][A-Z\\d_]+$")) + +; Operators + +"--" @operator +"-" @operator +"-=" @operator +":=" @operator +"!" @operator +"!=" @operator +"..." @operator +"*" @operator +"*" @operator +"*=" @operator +"/" @operator +"/=" @operator +"&" @operator +"&&" @operator +"&=" @operator +"%" @operator +"%=" @operator +"^" @operator +"^=" @operator +"+" @operator +"++" @operator +"+=" @operator +"<-" @operator +"<" @operator +"<<" @operator +"<<=" @operator +"<=" @operator +"=" @operator +"==" @operator +">" @operator +">=" @operator +">>" @operator +">>=" @operator +"|" @operator +"|=" @operator +"||" @operator + +; Keywords + +"break" @keyword +"case" @conditional +"chan" @keyword +"const" @keyword +"continue" @keyword +"default" @keyword +"defer" @keyword +"else" @conditional +"fallthrough" @keyword +"for" @repeat +"func" @keyword +"go" @keyword +"goto" @keyword +"if" @conditional +"import" @include +"interface" @keyword +"map" @keyword +"package" @include +"range" @keyword +"return" @keyword +"select" @keyword +"struct" @keyword +"switch" @conditional +"type" @keyword +"var" @keyword + +; Delimiters + +"." @punctuation.delimiter +"," @punctuation.delimiter +":" @punctuation.delimiter +";" @punctuation.delimiter + +"(" @punctuation.bracket +")" @punctuation.bracket +"{" @punctuation.bracket +"}" @punctuation.bracket +"[" @punctuation.bracket +"]" @punctuation.bracket + + +; Literals + +(interpreted_string_literal) @string +(raw_string_literal) @string +(rune_literal) @string +(escape_sequence) @escape + +(int_literal) @number +(float_literal) @float +(imaginary_literal) @number + +(true) @boolean +(false) @boolean +(nil) @constant.builtin + +(comment) @comment + +(ERROR) @error |
