From f02ae86f0cfb6cd4193611590ed11fb2331e3f9b Mon Sep 17 00:00:00 2001 From: Daniel Banck Date: Fri, 4 Mar 2022 18:04:01 +0100 Subject: [PATCH 1/2] add snapshot test for issue 941 --- tests/snapshot/hcl/issue941.hcl | 17 +++ tests/snapshot/hcl/issue941.hcl.snap | 184 +++++++++++++++++++++++++++ 2 files changed, 201 insertions(+) create mode 100644 tests/snapshot/hcl/issue941.hcl create mode 100644 tests/snapshot/hcl/issue941.hcl.snap diff --git a/tests/snapshot/hcl/issue941.hcl b/tests/snapshot/hcl/issue941.hcl new file mode 100644 index 0000000..8fed364 --- /dev/null +++ b/tests/snapshot/hcl/issue941.hcl @@ -0,0 +1,17 @@ +instance_size = ( #Comment + length(var.instance_size) > 0 ? ( #Comment + var.instance_size #If instance size is provided, use it. + ) #Comment + : #Comment + (var.insane_mode ? + lookup(local.insane_mode_instance_size_map, local.cloud, null) #If instance size is not provided and var.insane_mode is true, lookup in this table. + : # + lookup(local.instance_size_map, local.cloud, null) #If instance size is not provided and var.insane_mode is false, lookup in this table. + ) +) + +# Comment + +variable "test" { + default = "test" +} diff --git a/tests/snapshot/hcl/issue941.hcl.snap b/tests/snapshot/hcl/issue941.hcl.snap new file mode 100644 index 0000000..07830cb --- /dev/null +++ b/tests/snapshot/hcl/issue941.hcl.snap @@ -0,0 +1,184 @@ +>instance_size = ( #Comment +#^^^^^^^^^^^^^ source.hcl variable.declaration.hcl variable.other.readwrite.hcl +# ^ source.hcl variable.declaration.hcl +# ^ source.hcl variable.declaration.hcl keyword.operator.assignment.hcl +# ^ source.hcl variable.declaration.hcl +# ^ source.hcl punctuation.section.parens.begin.hcl +# ^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^^^^^^^ source.hcl variable.other.readwrite.hcl +> length(var.instance_size) > 0 ? ( #Comment +#^^ source.hcl +# ^^^^^^ source.hcl meta.function-call.hcl variable.function.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.begin.hcl +# ^^^ source.hcl meta.function-call.hcl +# ^ source.hcl meta.function-call.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^ source.hcl meta.function-call.hcl variable.other.member.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.end.hcl +# ^ source.hcl +# ^ source.hcl keyword.operator.hcl +# ^ source.hcl +# ^ source.hcl constant.numeric.integer.hcl +# ^ source.hcl +# ^ source.hcl keyword.operator.hcl +# ^ source.hcl +# ^ source.hcl punctuation.section.parens.begin.hcl +# ^^ source.hcl +# ^^^^^^^ source.hcl variable.other.readwrite.hcl +> var.instance_size #If instance size is provided, use it. +#^^^^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^ source.hcl variable.other.member.hcl +# ^^^^^^^^^^^^^^^^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +> ) #Comment +#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^^^^^^^ source.hcl variable.other.member.hcl +> : #Comment +#^^ source.hcl +# ^ source.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^^^^^^^ source.hcl variable.other.readwrite.hcl +> (var.insane_mode ? +#^^ source.hcl +# ^ source.hcl punctuation.section.parens.begin.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^ source.hcl variable.other.member.hcl +# ^ source.hcl +# ^ source.hcl keyword.operator.hcl +> lookup(local.insane_mode_instance_size_map, local.cloud, null) #If instance size is not provided and var.insane_mode is true, lookup in this table. +#^^^^ source.hcl +# ^^^^^^ source.hcl meta.function-call.hcl variable.function.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.begin.hcl +# ^^^^^ source.hcl meta.function-call.hcl +# ^ source.hcl meta.function-call.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl meta.function-call.hcl variable.other.member.hcl +# ^ source.hcl meta.function-call.hcl punctuation.separator.hcl +# ^^^^^^ source.hcl meta.function-call.hcl +# ^ source.hcl meta.function-call.hcl keyword.operator.accessor.hcl +# ^^^^^ source.hcl meta.function-call.hcl variable.other.member.hcl +# ^ source.hcl meta.function-call.hcl punctuation.separator.hcl +# ^ source.hcl meta.function-call.hcl +# ^^^^ source.hcl meta.function-call.hcl constant.language.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.end.hcl +# ^^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^ source.hcl variable.other.member.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl constant.language.hcl +# ^^ source.hcl +# ^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +> : # +#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +> lookup(local.instance_size_map, local.cloud, null) #If instance size is not provided and var.insane_mode is false, lookup in this table. +#^^^^ source.hcl +# ^^^^^^ source.hcl variable.other.member.hcl +# ^ source.hcl punctuation.section.parens.begin.hcl +# ^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^^^^^ source.hcl variable.other.member.hcl +# ^^ source.hcl +# ^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^ source.hcl variable.other.member.hcl +# ^^ source.hcl +# ^^^^ source.hcl constant.language.hcl +# ^ source.hcl punctuation.section.parens.end.hcl +# ^^^^^^^^^^^^^^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^ source.hcl variable.other.member.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^ source.hcl constant.language.hcl +# ^^ source.hcl +# ^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl keyword.operator.accessor.hcl +> ) +#^^^^ source.hcl +>) +#^^ source.hcl +> +># Comment +#^^ source.hcl +# ^^^^^^^ source.hcl variable.other.member.hcl +> +>variable "test" { +#^^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^ source.hcl string.quoted.double.hcl punctuation.definition.string.begin.hcl +# ^^^^ source.hcl string.quoted.double.hcl +# ^ source.hcl string.quoted.double.hcl punctuation.definition.string.end.hcl +# ^ source.hcl +# ^ source.hcl meta.braces.hcl punctuation.section.braces.begin.hcl +> default = "test" +#^^ source.hcl meta.braces.hcl +# ^^^^^^^ source.hcl meta.braces.hcl meta.mapping.key.hcl variable.other.readwrite.hcl +# ^ source.hcl meta.braces.hcl +# ^ source.hcl meta.braces.hcl keyword.operator.assignment.hcl +# ^ source.hcl meta.braces.hcl +# ^ source.hcl meta.braces.hcl string.quoted.double.hcl punctuation.definition.string.begin.hcl +# ^^^^ source.hcl meta.braces.hcl string.quoted.double.hcl +# ^ source.hcl meta.braces.hcl string.quoted.double.hcl punctuation.definition.string.end.hcl +>} +#^ source.hcl meta.braces.hcl punctuation.section.braces.end.hcl +> \ No newline at end of file From 16b7c362200614d8bb6fc48a27c8ae768f2fcaf6 Mon Sep 17 00:00:00 2001 From: Daniel Banck Date: Fri, 4 Mar 2022 18:05:30 +0100 Subject: [PATCH 2/2] update include patterns for parens By including expressions, we enable nested parenthesis to work. Additionally, we include comments since those are not part of the include patterns in expressions. --- syntaxes/hcl.tmGrammar.json | 4 +- tests/snapshot/hcl/issue941.hcl.snap | 182 +++++++++------------------ 2 files changed, 63 insertions(+), 123 deletions(-) diff --git a/syntaxes/hcl.tmGrammar.json b/syntaxes/hcl.tmGrammar.json index 6781d43..c5fcacf 100644 --- a/syntaxes/hcl.tmGrammar.json +++ b/syntaxes/hcl.tmGrammar.json @@ -819,10 +819,10 @@ }, "patterns": [ { - "include": "#expressions" + "include": "#comments" }, { - "include": "#local_identifiers" + "include": "#expressions" } ] } diff --git a/tests/snapshot/hcl/issue941.hcl.snap b/tests/snapshot/hcl/issue941.hcl.snap index 07830cb..6dc1405 100644 --- a/tests/snapshot/hcl/issue941.hcl.snap +++ b/tests/snapshot/hcl/issue941.hcl.snap @@ -4,8 +4,9 @@ # ^ source.hcl variable.declaration.hcl keyword.operator.assignment.hcl # ^ source.hcl variable.declaration.hcl # ^ source.hcl punctuation.section.parens.begin.hcl -# ^^^^^^^^^^^^^^^^^^^^ source.hcl -# ^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^^^^^^^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^ source.hcl comment.line.number-sign.hcl > length(var.instance_size) > 0 ? ( #Comment #^^ source.hcl # ^^^^^^ source.hcl meta.function-call.hcl variable.function.hcl @@ -22,40 +23,32 @@ # ^ source.hcl keyword.operator.hcl # ^ source.hcl # ^ source.hcl punctuation.section.parens.begin.hcl -# ^^ source.hcl -# ^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^ source.hcl comment.line.number-sign.hcl > var.instance_size #If instance size is provided, use it. -#^^^^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl +#^^^^^^^ source.hcl # ^ source.hcl keyword.operator.accessor.hcl # ^^^^^^^^^^^^^ source.hcl variable.other.member.hcl -# ^^^^^^^^^^^^^^^^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl comment.line.number-sign.hcl > ) #Comment -#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl -# ^^^^^^^ source.hcl variable.other.member.hcl +#^^ source.hcl +# ^ source.hcl punctuation.section.parens.end.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^ source.hcl comment.line.number-sign.hcl > : #Comment #^^ source.hcl # ^ source.hcl -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl -# ^^^^^^^ source.hcl variable.other.readwrite.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^ source.hcl comment.line.number-sign.hcl > (var.insane_mode ? #^^ source.hcl # ^ source.hcl punctuation.section.parens.begin.hcl -# ^^^ source.hcl variable.other.readwrite.hcl +# ^^^ source.hcl # ^ source.hcl keyword.operator.accessor.hcl # ^^^^^^^^^^^ source.hcl variable.other.member.hcl # ^ source.hcl @@ -75,110 +68,57 @@ # ^ source.hcl meta.function-call.hcl # ^^^^ source.hcl meta.function-call.hcl constant.language.hcl # ^ source.hcl meta.function-call.hcl punctuation.section.parens.end.hcl -# ^^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl -# ^^^^^^^^^^^ source.hcl variable.other.member.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl constant.language.hcl -# ^^ source.hcl -# ^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl +# ^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl comment.line.number-sign.hcl > : # -#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +#^^^^ source.hcl +# ^ source.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl > lookup(local.instance_size_map, local.cloud, null) #If instance size is not provided and var.insane_mode is false, lookup in this table. #^^^^ source.hcl -# ^^^^^^ source.hcl variable.other.member.hcl -# ^ source.hcl punctuation.section.parens.begin.hcl -# ^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl -# ^^^^^^^^^^^^^^^^^ source.hcl variable.other.member.hcl -# ^^ source.hcl -# ^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl -# ^^^^^ source.hcl variable.other.member.hcl -# ^^ source.hcl -# ^^^^ source.hcl constant.language.hcl -# ^ source.hcl punctuation.section.parens.end.hcl -# ^^^^^^^^^^^^^^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl -# ^^^^^^^^^^^ source.hcl variable.other.member.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^ source.hcl constant.language.hcl -# ^^ source.hcl -# ^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl keyword.operator.accessor.hcl +# ^^^^^^ source.hcl meta.function-call.hcl variable.function.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.begin.hcl +# ^^^^^ source.hcl meta.function-call.hcl +# ^ source.hcl meta.function-call.hcl keyword.operator.accessor.hcl +# ^^^^^^^^^^^^^^^^^ source.hcl meta.function-call.hcl variable.other.member.hcl +# ^ source.hcl meta.function-call.hcl punctuation.separator.hcl +# ^^^^^^ source.hcl meta.function-call.hcl +# ^ source.hcl meta.function-call.hcl keyword.operator.accessor.hcl +# ^^^^^ source.hcl meta.function-call.hcl variable.other.member.hcl +# ^ source.hcl meta.function-call.hcl punctuation.separator.hcl +# ^ source.hcl meta.function-call.hcl +# ^^^^ source.hcl meta.function-call.hcl constant.language.hcl +# ^ source.hcl meta.function-call.hcl punctuation.section.parens.end.hcl +# ^^^^^^^^^^^^^ source.hcl +# ^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.hcl comment.line.number-sign.hcl > ) -#^^^^ source.hcl ->) #^^ source.hcl +# ^ source.hcl punctuation.section.parens.end.hcl +>) +#^ source.hcl punctuation.section.parens.end.hcl > ># Comment -#^^ source.hcl -# ^^^^^^^ source.hcl variable.other.member.hcl +#^ source.hcl comment.line.number-sign.hcl punctuation.definition.comment.hcl +# ^^^^^^^^ source.hcl comment.line.number-sign.hcl > >variable "test" { -#^^^^^^^^ source.hcl variable.other.readwrite.hcl -# ^ source.hcl -# ^ source.hcl string.quoted.double.hcl punctuation.definition.string.begin.hcl -# ^^^^ source.hcl string.quoted.double.hcl -# ^ source.hcl string.quoted.double.hcl punctuation.definition.string.end.hcl -# ^ source.hcl -# ^ source.hcl meta.braces.hcl punctuation.section.braces.begin.hcl +#^^^^^^^^ source.hcl meta.block.hcl entity.name.type.hcl +# ^ source.hcl meta.block.hcl +# ^^^^^^ source.hcl meta.block.hcl variable.other.enummember.hcl +# ^ source.hcl meta.block.hcl +# ^ source.hcl meta.block.hcl punctuation.section.block.begin.hcl > default = "test" -#^^ source.hcl meta.braces.hcl -# ^^^^^^^ source.hcl meta.braces.hcl meta.mapping.key.hcl variable.other.readwrite.hcl -# ^ source.hcl meta.braces.hcl -# ^ source.hcl meta.braces.hcl keyword.operator.assignment.hcl -# ^ source.hcl meta.braces.hcl -# ^ source.hcl meta.braces.hcl string.quoted.double.hcl punctuation.definition.string.begin.hcl -# ^^^^ source.hcl meta.braces.hcl string.quoted.double.hcl -# ^ source.hcl meta.braces.hcl string.quoted.double.hcl punctuation.definition.string.end.hcl +#^^ source.hcl meta.block.hcl +# ^^^^^^^ source.hcl meta.block.hcl variable.declaration.hcl variable.other.readwrite.hcl +# ^ source.hcl meta.block.hcl variable.declaration.hcl +# ^ source.hcl meta.block.hcl variable.declaration.hcl keyword.operator.assignment.hcl +# ^ source.hcl meta.block.hcl variable.declaration.hcl +# ^ source.hcl meta.block.hcl string.quoted.double.hcl punctuation.definition.string.begin.hcl +# ^^^^ source.hcl meta.block.hcl string.quoted.double.hcl +# ^ source.hcl meta.block.hcl string.quoted.double.hcl punctuation.definition.string.end.hcl >} -#^ source.hcl meta.braces.hcl punctuation.section.braces.end.hcl +#^ source.hcl meta.block.hcl punctuation.section.block.end.hcl > \ No newline at end of file