diff --git a/hclwrite/format.go b/hclwrite/format.go index ded7fb4..7111ebd 100644 --- a/hclwrite/format.go +++ b/hclwrite/format.go @@ -317,7 +317,7 @@ func spaceAfterToken(subject, before, after *Token) bool { return true // Don't add spaces between interpolated items - case subject.Type == hclsyntax.TokenTemplateSeqEnd && after.Type == hclsyntax.TokenTemplateInterp: + case subject.Type == hclsyntax.TokenTemplateSeqEnd && (after.Type == hclsyntax.TokenTemplateInterp || after.Type == hclsyntax.TokenTemplateControl): return false case tokenBracketChange(subject) > 0: diff --git a/hclwrite/format_test.go b/hclwrite/format_test.go index a918290..7422769 100644 --- a/hclwrite/format_test.go +++ b/hclwrite/format_test.go @@ -79,6 +79,10 @@ func TestFormat(t *testing.T) { `a="${b}${c}${ d } ${e}"`, `a = "${b}${c}${d} ${e}"`, }, + { + `"%{if true}${var.foo}%{endif}"`, + `"%{if true}${var.foo}%{endif}"`, + }, { `b{}`, `b {}`,