From d9bc436788c7244a34d0e945a88c7cad0af1ff2a Mon Sep 17 00:00:00 2001 From: Ken703 Date: Wed, 25 Apr 2018 21:10:35 -0400 Subject: [PATCH] Auto format: no space between closing parenthesis and string template --- src/services/formatting/rules.ts | 3 +++ ...ormatNoSpaceBetweenClosingParenAndTemplateString.ts | 10 ++++++++++ 2 files changed, 13 insertions(+) create mode 100644 tests/cases/fourslash/formatNoSpaceBetweenClosingParenAndTemplateString.ts diff --git a/src/services/formatting/rules.ts b/src/services/formatting/rules.ts index 36ea7de23b4..6f15135982b 100644 --- a/src/services/formatting/rules.ts +++ b/src/services/formatting/rules.ts @@ -129,6 +129,9 @@ namespace ts.formatting { // template string rule("NoSpaceBetweenTagAndTemplateString", SyntaxKind.Identifier, [SyntaxKind.NoSubstitutionTemplateLiteral, SyntaxKind.TemplateHead], [isNonJsxSameLineTokenContext], RuleAction.Delete), + // No space between closing parenthesis and template string + rule("NoSpaceBetweenCloseParenAndTemplateString", SyntaxKind.CloseParenToken, SyntaxKind.NoSubstitutionTemplateLiteral, [isNonJsxSameLineTokenContext], RuleAction.Delete), + // JSX opening elements rule("SpaceBeforeJsxAttribute", anyToken, SyntaxKind.Identifier, [isNextTokenParentJsxAttribute, isNonJsxSameLineTokenContext], RuleAction.Space), rule("SpaceBeforeSlashInJsxOpeningElement", anyToken, SyntaxKind.SlashToken, [isJsxSelfClosingElementContext, isNonJsxSameLineTokenContext], RuleAction.Space), diff --git a/tests/cases/fourslash/formatNoSpaceBetweenClosingParenAndTemplateString.ts b/tests/cases/fourslash/formatNoSpaceBetweenClosingParenAndTemplateString.ts new file mode 100644 index 00000000000..47de1fac5d6 --- /dev/null +++ b/tests/cases/fourslash/formatNoSpaceBetweenClosingParenAndTemplateString.ts @@ -0,0 +1,10 @@ +/// + +//// foo() `abc`; +//// bar()`def`; + +format.document(); +verify.currentFileContentIs( +`foo()\`abc\`; +bar()\`def\`;` +);