Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/hcl/highlights.scm')
-rw-r--r--runtime/queries/hcl/highlights.scm89
1 files changed, 45 insertions, 44 deletions
diff --git a/runtime/queries/hcl/highlights.scm b/runtime/queries/hcl/highlights.scm
index ffeb79a5..d00f74f3 100644
--- a/runtime/queries/hcl/highlights.scm
+++ b/runtime/queries/hcl/highlights.scm
@@ -1,3 +1,48 @@
+(ERROR) @error
+
+; { key: val }
+
+(object_elem val: (expression
+ (variable_expr
+ (identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$"))))
+
+(get_attr (identifier) @variable.builtin (#match? @variable.builtin "^(root|cwd|module)$"))
+(variable_expr (identifier) @variable.builtin (#match? @variable.builtin "^(var|local|path)$"))
+((identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$"))
+((identifier) @keyword (#match? @keyword "^(module|root|cwd|resource|variable|data|locals|terraform|provider|output)$"))
+
+; highlight identifier keys as though they were block attributes
+(object_elem key: (expression (variable_expr (identifier) @variable.other.member)))
+
+(attribute (identifier) @variable.other.member)
+(function_call (identifier) @function.method)
+(block (identifier) @type.builtin)
+
+(identifier) @variable
+(comment) @comment
+(null_lit) @constant.builtin
+(numeric_lit) @constant.numeric
+(bool_lit) @constant.builtin.boolean
+
+[
+ (template_interpolation_start) ; ${
+ (template_interpolation_end) ; }
+ (template_directive_start) ; %{
+ (template_directive_end) ; }
+ (strip_marker) ; ~
+] @punctuation.special
+
+[
+ (heredoc_identifier) ; <<END
+ (heredoc_start) ; END
+] @punctuation.delimiter
+
+[
+ (quoted_template_start) ; "
+ (quoted_template_end); "
+ (template_literal) ; non-interpolation/directive content
+] @string
+
[
"if"
"else"
@@ -53,47 +98,3 @@
"&&"
"||"
] @operator
-
-(identifier) @variable
-
-; { key: val }
-
-(object_elem val: (expression
- (variable_expr
- (identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$"))))
-
-(get_attr (identifier) @variable.builtin (#match? @variable.builtin "^(root|cwd|module)$"))
-(variable_expr (identifier) @variable.builtin (#match? @variable.builtin "^(var|local|path)$"))
-((identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$"))
-((identifier) @keyword (#match? @keyword "^(module|root|cwd|resource|variable|data|locals|terraform|provider|output)$"))
-
-; highlight identifier keys as though they were block attributes
-(object_elem key: (expression (variable_expr (identifier) @variable.other.member)))
-
-(attribute (identifier) @variable.other.member)
-(function_call (identifier) @function.method)
-(block (identifier) @type.builtin)
-
-(comment) @comment
-(null_lit) @constant.builtin
-(numeric_lit) @constant.numeric
-(bool_lit) @constant.builtin.boolean
-
-[
- (template_interpolation_start) ; ${
- (template_interpolation_end) ; }
- (template_directive_start) ; %{
- (template_directive_end) ; }
- (strip_marker) ; ~
-] @punctuation.special
-
-[
- (heredoc_identifier) ; <<END
- (heredoc_start) ; END
-] @punctuation.delimiter
-
-[
- (quoted_template_start) ; "
- (quoted_template_end); "
- (template_literal) ; non-interpolation/directive content
-] @string