summaryrefslogtreecommitdiff
path: root/runtime/queries/awk/highlights.scm
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/queries/awk/highlights.scm')
-rw-r--r--runtime/queries/awk/highlights.scm122
1 files changed, 122 insertions, 0 deletions
diff --git a/runtime/queries/awk/highlights.scm b/runtime/queries/awk/highlights.scm
new file mode 100644
index 00000000..34d660ad
--- /dev/null
+++ b/runtime/queries/awk/highlights.scm
@@ -0,0 +1,122 @@
+; tree-sitter-awk v0.5.1
+
+; https://tree-sitter.github.io/tree-sitter/using-parsers#pattern-matching-with-queries
+
+; Order matters
+
+[
+ ";"
+ ","
+ "("
+ ")"
+ "["
+ "]"
+ "{"
+ "}"
+] @operator
+
+(piped_io_statement [
+ "|"
+ "|&"
+] @operator)
+
+(redirected_io_statement [
+ ">"
+ ">>"
+] @operator)
+
+(update_exp [
+ "++"
+ "--"
+] @operator)
+
+(ternary_exp [
+ "?"
+ ":"
+] @operator)
+
+(assignment_exp [
+ "="
+ "+="
+ "-="
+ "*="
+ "/="
+ "%="
+ "^="
+] @operator)
+
+(unary_exp [
+ "!"
+ "+"
+ "-"
+] @operator)
+
+(binary_exp [
+ "^"
+ "**"
+ "*"
+ "/"
+ "%"
+ "+"
+ "-"
+ "<"
+ ">"
+ "<="
+ ">="
+ "=="
+ "!="
+ "~"
+ "!~"
+ "in"
+ "&&"
+ "||"
+] @operator)
+
+[
+ "@include"
+ "@load"
+ "@namespace"
+ (pattern)
+] @namespace
+
+[
+ "function"
+ "func"
+ "print"
+ "printf"
+ "if"
+ "else"
+ "do"
+ "while"
+ "for"
+ "in"
+ "delete"
+ "return"
+ "exit"
+ "switch"
+ "case"
+ "default"
+ (break_statement)
+ (continue_statement)
+ (next_statement)
+ (nextfile_statement)
+ (getline_input)
+ (getline_file)
+] @keyword
+
+(comment) @comment
+(regex) @string.regexp
+(number) @constant.numeric
+(string) @string
+
+(func_call name: (identifier) @function)
+(func_def name: (identifier) @function)
+
+(field_ref (_) @variable)
+[
+ (identifier)
+ (field_ref)
+] @variable
+
+(ns_qualified_name "::" @operator)
+(ns_qualified_name (namespace) @namespace)