aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries
diff options
context:
space:
mode:
authorunrelentingtech2022-05-11 01:06:37 +0000
committerGitHub2022-05-11 01:06:37 +0000
commit2cb1ea7127122bbcb0f05dfbb7959334c751c3d7 (patch)
tree9988931531685e6362dee38e9bf6b58670ca13ea /runtime/queries
parent807cdc60bf060bdbff95c2ab44c4f2ce0cf66e83 (diff)
feat(lang): add Meson language support (#2314)
https://mesonbuild.com/Syntax.html
Diffstat (limited to 'runtime/queries')
-rw-r--r--runtime/queries/meson/highlights.scm62
-rw-r--r--runtime/queries/meson/indents.scm16
2 files changed, 78 insertions, 0 deletions
diff --git a/runtime/queries/meson/highlights.scm b/runtime/queries/meson/highlights.scm
new file mode 100644
index 00000000..01df8f27
--- /dev/null
+++ b/runtime/queries/meson/highlights.scm
@@ -0,0 +1,62 @@
+(string_literal) @string
+
+(boolean_literal) @constant.builtin.boolean
+(integer_literal) @constant.numeric.integer
+
+(comment) @comment.line
+(function_id) @function
+(keyword_arg_key) @variable.other.member
+(id_expression) @variable
+
+[
+ "if"
+ "elif"
+ "else"
+ "endif"
+] @keyword.control.conditional
+
+[
+ "foreach"
+ "endforeach"
+] @keyword.control.repeat
+
+[
+ "break"
+ "continue"
+] @keyword.control
+
+[
+ "not"
+ "in"
+ "and"
+ "or"
+] @keyword.operator
+
+[
+ "!"
+ "+"
+ "-"
+ "*"
+ "/"
+ "%"
+ "=="
+ "!="
+ ">"
+ "<"
+ ">="
+ "<="
+] @operator
+
+[
+ ":"
+ ","
+] @punctuation.delimiter
+
+[
+ "("
+ ")"
+ "["
+ "]"
+ "{"
+ "}"
+] @punctuation.bracket
diff --git a/runtime/queries/meson/indents.scm b/runtime/queries/meson/indents.scm
new file mode 100644
index 00000000..a1c7b3fa
--- /dev/null
+++ b/runtime/queries/meson/indents.scm
@@ -0,0 +1,16 @@
+[
+ (method_expression)
+ (function_expression)
+ (array_literal)
+ (dictionary_literal)
+ (selection_statement)
+ (iteration_statement)
+] @indent
+
+[
+ ")"
+ "]"
+ "}"
+ "endif"
+ "endforeach"
+] @outdent