aboutsummaryrefslogtreecommitdiffstats
path: root/queries
diff options
context:
space:
mode:
Diffstat (limited to 'queries')
-rw-r--r--queries/promql/highlights.scm54
-rw-r--r--queries/promql/injections.scm1
-rw-r--r--queries/yaml/injections.scm26
3 files changed, 81 insertions, 0 deletions
diff --git a/queries/promql/highlights.scm b/queries/promql/highlights.scm
new file mode 100644
index 000000000..7c0d1241e
--- /dev/null
+++ b/queries/promql/highlights.scm
@@ -0,0 +1,54 @@
+; highlights.scm
+
+[
+ "*"
+ "/"
+ "%"
+ "+"
+ "-"
+ ">"
+ ">="
+ "<"
+ "<="
+ "="
+ "=~"
+ "!="
+ "!~"
+] @operator
+
+[
+ "and"
+ "unless"
+ "or"
+ "bool"
+] @keyword.operator
+
+[
+ "{"
+ "}"
+ "["
+ "]"
+ "("
+ ")"
+] @punctuation.bracket
+
+(float_literal) @float
+(string_literal) @string
+
+(metric_name) @type
+(range_selection) @text.strong @type
+(subquery_range_selection) @text.strong @type
+
+(label_name) @field
+(label_value) @text.underline @string.regex
+
+(function_name) @function.call
+
+[
+ "by"
+ "without"
+] @function
+
+(comment) @comment @spell
+(ERROR) @error
+
diff --git a/queries/promql/injections.scm b/queries/promql/injections.scm
new file mode 100644
index 000000000..ffdf4f8e6
--- /dev/null
+++ b/queries/promql/injections.scm
@@ -0,0 +1 @@
+((label_value) @regex (#offset! @regex 0 1 0 -1))
diff --git a/queries/yaml/injections.scm b/queries/yaml/injections.scm
index 40727bbd2..a81ca4d06 100644
--- a/queries/yaml/injections.scm
+++ b/queries/yaml/injections.scm
@@ -25,3 +25,29 @@
(block_sequence_item
(block_node
(block_scalar) @bash (#offset! @bash 0 1 0 0))))))
+
+;; Prometheus Alertmanager ("expr")
+(block_mapping_pair
+ key: (flow_node) @_expr (#eq? @_expr "expr")
+ value: (flow_node
+ (plain_scalar) @promql))
+
+(block_mapping_pair
+ key: (flow_node) @_expr (#eq? @_expr "expr")
+ value: (block_node
+ (block_scalar) @promql (#offset! @promql 0 2 0 0)))
+
+(block_mapping_pair
+ key: (flow_node) @_expr (#eq? @_expr "expr")
+ value: (block_node
+ (block_sequence
+ (block_sequence_item
+ (flow_node) @promql))))
+
+(block_mapping_pair
+ key: (flow_node) @_expr (#eq @_expr "expr")
+ value: (block_node
+ (block_sequence
+ (block_sequence_item
+ (block_node
+ (block_scalar) @promql (#offset! @promql 0 2 0 0))))))