我知道在 Visual Studio Code 中可以使用 Ctrl + F/Cmd + F格式化代码,但是如何更改每种语言的格式化选项?
例如,在 VisualStudio2013中,我可以为 CSS 选择压缩模式。
是否有另一个隐藏的 JSON 文件来做到这一点?
此 是现在支持 (截至2019年)。请参阅 下面是萨贾德 · 萨德里的回答了解说明。
不,当前不支持 (二零一五年)。
我刚刚在 Market Place 中找到了这个名为 美化的扩展,是的,它是另一个配置设置文件. :)
在 VisualStudio 代码中美化 javascript、 JSON、 CSS、 Sass 和 HTML。 VS Code 在内部使用 js-beautiful,但是它缺乏这样的能力 修改要使用的样式。此扩展名启用运行 在 VS 代码中美化,并尊重 打开文件的路径树来加载代码样式 (美化选择)或 F1美化文件。 有关. jsBeautifyrc 中的设置的帮助,请参见 Settings.md
在 VisualStudio 代码中美化 javascript、 JSON、 CSS、 Sass 和 HTML。
VS Code 在内部使用 js-beautiful,但是它缺乏这样的能力 修改要使用的样式。此扩展名启用运行 在 VS 代码中美化,并尊重 打开文件的路径树来加载代码样式 (美化选择)或 F1美化文件。
有关. jsBeautifyrc 中的设置的帮助,请参见 Settings.md
下面是 GitHub 存储库: https://github.com/HookyQR/VSCodeBeautify
一个适合我的解决方案(2017年7月)是利用 埃斯林特。众所周知,您可以以多种方式使用这个 linter,全局的或者局部的。我使用它本地和谷歌风格指南。他们的方法是这样的..。
cd to your working directory
npm init
npm install --save-dev eslint
node_modules/.bin/eslint --init
I use google style and json config file
现在你会有一个 ABc0文件作为你工作目录的根目录。您可以打开该文件,并根据您的意愿使用 埃斯林特规则进行修改。下一个 cmd+,打开 vscode系统首选项。在搜索栏中键入 eslint并查找 "eslint.autoFixOnSave": false。复制设置并粘贴到用户设置文件中,并将 false更改为 true。希望这可以帮助有人利用 VScode。
cmd+,
vscode
eslint
"eslint.autoFixOnSave": false
false
true
您可以从“设置”中进行一些更改。例如,javascript 规则以“ javascript.format”开头。但是对于高级格式控件,仍然需要使用一些扩展。
Format 代码命令的规则设置
2022年最新情况
解决方案 A:
按 Ctrl + Shift + P
然后输入 Format Document With...
Format Document With...
在列表的末尾单击 Configure Default Formatter...
Configure Default Formatter...
现在你可以从列表中选择你最喜欢的美容师了。
解决方案 B:
进入 file -> preferences -> settings搜索 format, 在左边,点击 Text Editor,右边的第一个项目是 Editor: Default Formatter,从下拉菜单中你可以选择你之前安装的任何文档格式化程序。
file -> preferences -> settings
format
Text Editor
Editor: Default Formatter
如果我们现在谈论的是 VisualStudio 代码,你的 settings.json中的 设置默认格式化程序:
settings.json
// Defines a default formatter which takes precedence over all other formatter settings. // Must be the identifier of an extension contributing a formatter. "editor.defaultFormatter": null,
指向任何已安装扩展的标识符,即。
"editor.defaultFormatter": "esbenp.prettier-vscode"
你也可以这样做 < em > 特定格式:
"[html]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[scss]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[sass]": { "editor.defaultFormatter": "michelemelluso.code-beautifier" },
还有 看这里。
你也可以在键盘快捷键(keybindings.json)中使用 为不同的格式化程序分配其他键。默认情况下,它会显示:
keybindings.json
{ "key": "shift+alt+f", "command": "editor.action.formatDocument", "when": "editorHasDocumentFormattingProvider && editorHasDocumentFormattingProvider && editorTextFocus && !editorReadonly" }
最后,如果您决定使用 Prettier 插件和 prettier.rc,并且希望例如对 html、 scss、 json 进行不同的缩进..。
prettier.rc
{ "semi": true, "singleQuote": false, "trailingComma": "none", "useTabs": false, "overrides": [ { "files": "*.component.html", "options": { "parser": "angular", "tabWidth": 4 } }, { "files": "*.scss", "options": { "parser": "scss", "tabWidth": 2 } }, { "files": ["*.json", ".prettierrc"], "options": { "parser": "json", "tabWidth": 4 } } ] }
要更改特定的 C # (OmniSharp)格式设置,可以使用 json 文件: 用户: ~/.omnisharp/omnisharp.json或 %USERPROFILE%\.omnisharp\omnisharp.json 工作区: OmniSharp 指向的工作目录中的 omnisharp.json文件。
~/.omnisharp/omnisharp.json
%USERPROFILE%\.omnisharp\omnisharp.json
omnisharp.json
例如:
{ "FormattingOptions": { "NewLinesForBracesInMethods": false, "NewLinesForBracesInProperties": false, "NewLinesForBracesInAccessors": false, "NewLinesForBracesInAnonymousMethods": false, "NewLinesForBracesInControlBlocks": false, "NewLinesForBracesInObjectCollectionArrayInitializers": false, "NewLinesForBracesInLambdaExpressionBody": false } }
关于这篇文章的细节 | Json 模式(它已经在 vscode 中了,只需要 CTRL + SPACE 就可以了)
其他语言扩展可能有类似的文件来设置它。
我刚才也遇到了同样的事。我在“设置”中设置了更漂亮的默认格式化程序,它又开始工作了。我的默认格式化程序是 无效。
设置 VSCODE 默认格式化程序
文件-> 首选项-> 设置(适用于 Windows) 代码-> 首选项-> 设置(对于 Mac)
搜索“ Default Formatter”,在下拉列表中,将显示 esbenp.pretty tier-vscode。