我是在Angular开发的,经过近一年的完美格式化后,我的vscode正处于fritz状态。更具体地说,当我点击格式doc。它用2个空格而不是4个缩进。如何修复此问题,或检查覆盖我设置的内容?
我的用户和工作区设置(它们是相同的):
{
"editor.fontSize": 16,
"editor.tabSize": 4,
"editor.insertSpaces": true,
"editor.wordWrap": "off",
"workbench.iconTheme": "material-icon-theme",
"editor.detectIndentation": true,
"prettier.bracketSpacing": true,
"prettier.eslintIntegration": true,
"prettier.singleQuote": true,
"prettier.tabWidth": 4,
"prettier.useTabs": false,
}
我的扩展程序列表:
Angular Essentials(注意更漂亮的是依赖关系,所有其他deps都已安装)
Bracket Pair Colorizer language-vscode-javascript-angular2
编辑:
另外,它在我的编辑器底部有缩进2个空格,当我点击它并点击4个空格时它会显示已配置的标签大小。为什么不为每个文件设置这个默认值?
答案 0 :(得分:0)
我认为这是因为Angular Essentials Prettier插件默认情况下缩进为2,所以你必须创建一个更强大的单独的配置才能使它工作。
答案 1 :(得分:0)
这可能是由于两件事造成的:
首先,注释中提到的.editorconfig
文件是Angular生成的单独文件(特别是与VSCode不相关)。
它可作为任何编辑者阅读和服从的指南,允许开发人员以相同的样式处理同一个项目,但可以选择多个IDE /编辑器。
它应该看起来像这样:
# Editor configuration, see https://editorconfig.org
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
max_line_length = off
trim_trailing_whitespace = false
如评论所言,更多信息可以在https://editorconfig.org上找到。
在您的情况下,您希望将indent_size = 2
行更改为indent_size = 4
。
如果这不能解决问题,也可能是Angular CLI生成具有2个空格的文件,而VSCode根据您的"editor.detectIndentation": true
设置检测到该缩进。
这是here一段时间以来的热门话题,虽然被this解决了,但基于this comment似乎没有帮助。
我在VSCode中使用Language Specific Settings修复了此问题。 我选择将制表符的大小强制设置为4,并对Angular生成的所有文件类型禁用缩进检测。 您可以将其放在“ VSCode用户设置”中,或按照these instructions)进行“正确”路由。
{
"[typescript]": {
"editor.tabSize": 4,
"editor.detectIndentation": false
},
"[javascript]": {
"editor.tabSize": 4,
"editor.detectIndentation": false
},
"[html]": {
"editor.tabSize": 4,
"editor.detectIndentation": false
},
"[json]": {
"editor.tabSize": 4,
"editor.detectIndentation": false
},
"[jsonc]": {
"editor.tabSize": 4,
"editor.detectIndentation": false
}
}
在任何地方添加"editor.formatOnSave": true
或仅按 Ctrl + Shift + I (格式文件)都可以解决问题。
"editor.formatOnPaste": true
如果经常粘贴2个空格的示例代码,可能也很有用。