From a94d93f0299f56638cb93f102ac1cd2d0393410a Mon Sep 17 00:00:00 2001 From: John Long Date: Thu, 29 Jun 2023 19:28:18 -0500 Subject: [PATCH] Add support for import block --- grammars/tf.yaml | 17 +++++++++++++++++ snippets/tf.yaml | 10 ++++++++++ 2 files changed, 27 insertions(+) diff --git a/grammars/tf.yaml b/grammars/tf.yaml index 7793d8e..c31cf4f 100644 --- a/grammars/tf.yaml +++ b/grammars/tf.yaml @@ -118,6 +118,23 @@ patterns: 2: { name: keyword.operator.assignment.tf } - include: "#definition-right" + - name: "meta.import.tf" + begin: '\b(import)([\w\-\"$])?(?:\s+)?({)' + beginCaptures: + 1: { name: keyword.declaration.$1.tf } + 2: { name: invalid.illegal.keyword.$1.tf } + 3: { name: punctuation.declaration.block.begin.tf } + end: "}" + endCaptures: + 0: { name: punctuation.declaration.block.end.tf } + patterns: + - match: '\b([\-\w]+)(?:\s+)?(=)(?!=|>|<)' + captures: + 1: { name: variable.other.readwrite.tf } + 2: { name: keyword.operator.assignment.tf } + - include: "#definition-right" + + - name: "meta.module.tf" begin: '\b(module)([\w\-\"$])?(?:\s+)?(")?([^\"\n]+)?(")?(?:\s+)?({)' beginCaptures: diff --git a/snippets/tf.yaml b/snippets/tf.yaml index b6e2edd..7645b33 100644 --- a/snippets/tf.yaml +++ b/snippets/tf.yaml @@ -51,6 +51,16 @@ Moved block: to = "${2:new}" } +Import block: + scope: source.tf + prefix: import + description: Used to import existing resources into Terraform state. + body: | + import { + to = ${1:resource} + id = "${2:resource_id}" + } + Variable: scope: source.tf prefix: variable