假设我输入以下代码并格式化它。
if (condition) { /* Hello! */ }
如果这是 C# 代码,则其格式如下:
if (condition)
{
// Hello!
}
如果是 JavaScript,VSCode 的格式如下:
if (condition) {
// Hello!
}
那么如何对所有语言使用第一种格式样式(新行上的大括号)?我找不到设置或类似的东西。有建议吗?
按照以下步骤为 Java Script 和 Type Script 制作 Visual Studio Code 格式,在新行上打开大括号。
在 Visual Studio Code (v1.20.0)
在“用户设置”(右侧窗格中)中添加以下行
"javascript.format.placeOpenBraceOnNewLineForControlBlocks": true,
"javascript.format.placeOpenBraceOnNewLineForFunctions": true,
"typescript.format.placeOpenBraceOnNewLineForControlBlocks": true,
"typescript.format.placeOpenBraceOnNewLineForFunctions": true,
保存“用户设置”即可完成!
需要PHP解决方案的人,需要安装
PHP Intelephense
扩展并更新settings.json
文件。
"intelephense.format.braces": "k&r"
默认为
psr12
。
默认情况下,VS code 不支持自定义格式。但是您可以使用 js-beautify 扩展进行格式自定义。您可以在 VS code Marketplace 上找到免费版本 (https://marketplace.visualstudio.com/items?itemName=HookyQR.beautify)。
对于新行上的大括号的要求,可以通过在项目根文件夹上创建“.jsbeautifyrc”配置文件并定义以下行来设置。
{
"brace_style": "expand"
}
有关更多格式选项,您可以从以下链接找到: https://github.com/HookyQR/VSCodeBeautify/blob/master/Settings.md
C_Cpp:Clang_format_fallback 样式
谷歌
在 settings.json 文件中添加这些行,通过类型 ctrl+,
打开它 // Brackets on a new line
"javascript.format.placeOpenBraceOnNewLineForControlBlocks": true,
"javascript.format.placeOpenBraceOnNewLineForFunctions": true,
"typescript.format.placeOpenBraceOnNewLineForControlBlocks": true,
"typescript.format.placeOpenBraceOnNewLineForFunctions": true,
或者从 settings 搜索 function new line 并选中两个框,通过类型 ctrl+shift+p 打开它并搜索 open 设置(json)
2021 年,默认行为似乎正是 OP 想要的。要在 C# 中的同一行上获得大括号(带有omnisharp的 vscode 1.63),您必须在项目根目录中创建一个omnisharp.json文件,并使用正确的设置,如https://nosuchstudio.medium.com/formatting-curly-braces-中所述-在 c-in-vscode-c4937e1c215f 的同一行上。例如
{
"FormattingOptions": {
"NewLinesForBracesInLambdaExpressionBody": false,
"NewLinesForBracesInAnonymousMethods": false,
"NewLinesForBracesInAnonymousTypes": false,
"NewLinesForBracesInControlBlocks": false,
"NewLinesForBracesInTypes": false,
"NewLinesForBracesInMethods": false,
"NewLinesForBracesInProperties": false,
"NewLinesForBracesInObjectCollectionArrayInitializers": false,
"NewLinesForBracesInAccessors": false,
"NewLineForElse": false,
"NewLineForCatch": false,
"NewLineForFinally": false
}
}
找到了 C# 的修复程序! 下载 Ironcutter24 的 C# Curly Formatter 扩展。完毕!现在你所有的牙套都将移动到新的一行。干净又漂亮。