Skip to content

Commit 0de08c0

Browse files
authored
Merge pull request #22 from hariscodes/syntax-highlighting-issues
Fixing syntax highlighting issues
2 parents b9f54e2 + 88a47d2 commit 0de08c0

3 files changed

Lines changed: 101 additions & 0 deletions

File tree

examples/test-attributes.hcl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
terragrunt_version_constraint = "~> 0.32"
2+
terraform_version_constraint = "~> 1.0"
3+
download_dir = "~/fake/dir"
4+
iam_role = "arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME"
5+
iam_assume_role_session_name = "sts-session-name"
6+
terraform_binary = "/usr/bin/terraform_alt"
7+
prevent_destroy = true
8+
skip = false

examples/test-tg-blocks.hcl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
inputs = merge(
2+
local.account_vars.locals,
3+
local.region_vars.locals,
4+
local.environment_vars.locals,
5+
)

grammars/terragrunt.yaml

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,20 @@ patterns:
179179
2: { name: keyword.operator.assignment.terragrunt }
180180
- include: "#definition-right"
181181

182+
- name: "meta.inputs_function.terragrunt"
183+
begin: '\b(inputs)([\w\-\"$])?(?:\s+)?(=)(?:\s+)?(merge|map|tomap|zipmap)?(\()'
184+
beginCaptures:
185+
1: { name: keyword.declaration.$1.terragrunt }
186+
2: { name: invalid.illegal.keyword.$1.terragrunt }
187+
3: { name: keyword.operator.assignment.terragrunt }
188+
4: { name: support.function.builtin.collection.terragrunt }
189+
5: { name: punctuation.declaration.block.begin.terragrunt }
190+
end: "}"
191+
endCaptures:
192+
0: { name: punctuation.declaration.block.end.terragrunt }
193+
patterns:
194+
- include: "#definition-right"
195+
182196
- name: "meta.dependency.terragrunt"
183197
begin: '\b(dependency)([\w\-\"$])?(?:\s+)?(")?([^\"\n]+)?(")?(?:\s+)?({)'
184198
beginCaptures:
@@ -412,6 +426,80 @@ patterns:
412426
# captures:
413427
# 1: { name: keyword.control.loop.terragrunt }
414428
- include: "#definition-right"
429+
430+
- name: "meta.terragrunt_version_constraint.terragrunt"
431+
match: '\b(terragrunt_version_constraint)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
432+
captures:
433+
1: { name: keyword.declaration.$1.terragrunt }
434+
2: { name: keyword.operator.assignment.terragrunt }
435+
3:
436+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
437+
4: { name: string.quoted.double.terragrunt }
438+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
439+
440+
- name: "meta.terraform_version_constraint.terragrunt"
441+
match: '\b(terraform_version_constraint)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
442+
captures:
443+
1: { name: keyword.declaration.$1.terragrunt }
444+
2: { name: keyword.operator.assignment.terragrunt }
445+
3:
446+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
447+
4: { name: string.quoted.double.terragrunt }
448+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
449+
450+
- name: "meta.download_dir.terragrunt"
451+
match: '\b(download_dir)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
452+
captures:
453+
1: { name: keyword.declaration.$1.terragrunt }
454+
2: { name: keyword.operator.assignment.terragrunt }
455+
3:
456+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
457+
4: { name: string.quoted.double.terragrunt }
458+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
459+
460+
- name: "meta.iam_role.terragrunt"
461+
match: '\b(iam_role)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
462+
captures:
463+
1: { name: keyword.declaration.$1.terragrunt }
464+
2: { name: keyword.operator.assignment.terragrunt }
465+
3:
466+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
467+
4: { name: string.quoted.double.terragrunt }
468+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
469+
470+
- name: "meta.iam_assume_role_session_name.terragrunt"
471+
match: '\b(iam_assume_role_session_name)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
472+
captures:
473+
1: { name: keyword.declaration.$1.terragrunt }
474+
2: { name: keyword.operator.assignment.terragrunt }
475+
3:
476+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
477+
4: { name: string.quoted.double.terragrunt }
478+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
479+
480+
- name: "meta.terraform_binary.terragrunt"
481+
match: '\b(terraform_binary)(?:\s+)?(=)(?:\s+)?(")([^$"]+)?(")'
482+
captures:
483+
1: { name: keyword.declaration.$1.terragrunt }
484+
2: { name: keyword.operator.assignment.terragrunt }
485+
3:
486+
{ name: string.quoted.double.terragrunt punctuation.definition.string.begin.terragrunt }
487+
4: { name: string.quoted.double.terragrunt }
488+
5: { name: string.quoted.double.terragrunt punctuation.definition.string.end.terragrunt }
489+
490+
- name: "meta.prevent_destroy.terragrunt"
491+
match: '\b(prevent_destroy)(?:\s+)?(=)(?:\s+)?(true|false)'
492+
captures:
493+
1: { name: keyword.declaration.$1.terragrunt }
494+
2: { name: keyword.operator.assignment.terragrunt }
495+
3: { name: constant.language.boolean.$1.terragrunt }
496+
497+
- name: "meta.skip.terragrunt"
498+
match: '\b(skip)(?:\s+)?(=)(?:\s+)?(true|false)'
499+
captures:
500+
1: { name: keyword.declaration.$1.terragrunt }
501+
2: { name: keyword.operator.assignment.terragrunt }
502+
3: { name: constant.language.boolean.$1.terragrunt }
415503

416504
- include: "#invalid"
417505

0 commit comments

Comments
 (0)