From 5e10fe283f11d4436f10c7174b6f02039a976a09 Mon Sep 17 00:00:00 2001 From: Mackenzie McClane Date: Thu, 2 Mar 2017 14:49:22 -0600 Subject: [PATCH] Add typescript and javascript format.insertSpaceBeforeFunctionParenthesis (#21712) * Update tsfmt.json * Update formattingProvider.ts * Update package.nls.json * Update package.json * Update package.json * Add TS version requirement to description --- extensions/typescript/package.json | 12 +++++++++++- extensions/typescript/package.nls.json | 3 ++- .../typescript/src/features/formattingProvider.ts | 6 +++++- tsfmt.json | 3 ++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/extensions/typescript/package.json b/extensions/typescript/package.json index edf3422bf90..f777f21be4a 100644 --- a/extensions/typescript/package.json +++ b/extensions/typescript/package.json @@ -164,6 +164,11 @@ "default": true, "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%" }, + "typescript.format.insertSpaceBeforeFunctionParenthesis": { + "type": "boolean", + "default": false, + "description": "%format.insertSpaceBeforeFunctionParenthesis%" + }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": { "type": "boolean", "default": false, @@ -229,6 +234,11 @@ "default": true, "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%" }, + "javascript.format.insertSpaceBeforeFunctionParenthesis": { + "type": "boolean", + "default": false, + "description": "%format.insertSpaceBeforeFunctionParenthesis%" + }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": { "type": "boolean", "default": false, @@ -357,4 +367,4 @@ } ] } -} \ No newline at end of file +} diff --git a/extensions/typescript/package.nls.json b/extensions/typescript/package.nls.json index 87a33de20fe..9746cfc13a4 100644 --- a/extensions/typescript/package.nls.json +++ b/extensions/typescript/package.nls.json @@ -17,6 +17,7 @@ "format.insertSpaceBeforeAndAfterBinaryOperators": "Defines space handling after a binary operator.", "format.insertSpaceAfterKeywordsInControlFlowStatements": "Defines space handling after keywords in a control flow statement.", "format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": "Defines space handling after function keyword for anonymous functions.", + "format.insertSpaceBeforeFunctionParenthesis": "Defines space handling before function argument parentheses. Requires TypeScript >= 2.1.5.", "format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": "Defines space handling after opening and before closing non empty parenthesis.", "format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": "Defines space handling after opening and before closing non empty brackets.", "format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": "Defines space handling after opening and before closing template string braces. Requires TypeScript >= 2.0.6.", @@ -29,4 +30,4 @@ "typescript.referencesCodeLens.enabled": "Enable/disable references CodeLens.", "typescript.implementationsCodeLens.enabled": "Enable/disable implementations CodeLens.", "typescript.selectTypeScriptVersion.title": "Select TypeScript Version" -} \ No newline at end of file +} diff --git a/extensions/typescript/src/features/formattingProvider.ts b/extensions/typescript/src/features/formattingProvider.ts index a7b02b85526..15100f056bb 100644 --- a/extensions/typescript/src/features/formattingProvider.ts +++ b/extensions/typescript/src/features/formattingProvider.ts @@ -21,6 +21,7 @@ interface Configuration { insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: boolean; insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: boolean; insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces: boolean; + insertSpaceBeforeFunctionParenthesis: boolean; placeOpenBraceOnNewLineForFunctions: boolean; placeOpenBraceOnNewLineForControlBlocks: boolean; @@ -33,6 +34,7 @@ namespace Configuration { export const insertSpaceBeforeAndAfterBinaryOperators: string = 'insertSpaceBeforeAndAfterBinaryOperators'; export const insertSpaceAfterKeywordsInControlFlowStatements: string = 'insertSpaceAfterKeywordsInControlFlowStatements'; export const insertSpaceAfterFunctionKeywordForAnonymousFunctions: string = 'insertSpaceAfterFunctionKeywordForAnonymousFunctions'; + export const insertSpaceBeforeFunctionParenthesis: string = 'insertSpaceBeforeFunctionParenthesis'; export const insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: string = 'insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis'; export const insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: string = 'insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets'; export const insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: string = 'insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces'; @@ -59,6 +61,7 @@ namespace Configuration { result.insertSpaceBeforeAndAfterBinaryOperators = true; result.insertSpaceAfterKeywordsInControlFlowStatements = true; result.insertSpaceAfterFunctionKeywordForAnonymousFunctions = false; + result.insertSpaceBeforeFunctionParenthesis = false; result.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis = false; result.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets = false; result.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces = false; @@ -213,6 +216,7 @@ export default class TypeScriptFormattingProvider implements DocumentRangeFormat insertSpaceBeforeAndAfterBinaryOperators: this.config.insertSpaceBeforeAndAfterBinaryOperators, insertSpaceAfterKeywordsInControlFlowStatements: this.config.insertSpaceAfterKeywordsInControlFlowStatements, insertSpaceAfterFunctionKeywordForAnonymousFunctions: this.config.insertSpaceAfterFunctionKeywordForAnonymousFunctions, + insertSpaceBeforeFunctionParenthesis: this.config.insertSpaceBeforeFunctionParenthesis, insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: this.config.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis, insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: this.config.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets, insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: this.config.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces, @@ -221,4 +225,4 @@ export default class TypeScriptFormattingProvider implements DocumentRangeFormat placeOpenBraceOnNewLineForControlBlocks: this.config.placeOpenBraceOnNewLineForControlBlocks }; } -} \ No newline at end of file +} diff --git a/tsfmt.json b/tsfmt.json index 2259dd3ff39..fffcf07c199 100644 --- a/tsfmt.json +++ b/tsfmt.json @@ -11,6 +11,7 @@ "insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false, "insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false, "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": false, + "insertSpaceBeforeFunctionParenthesis": false, "placeOpenBraceOnNewLineForFunctions": false, "placeOpenBraceOnNewLineForControlBlocks": false -} \ No newline at end of file +} -- GitLab