我在VS Code中应用了以下设置以获得4个空格缩进。但是当我打开一个新文件时,它会在右下角切换回2。
如果我然后单击右下角并将其更改回4,则当我重新打开文件时它仍然会变回2,或者执行自动缩进( Alt + 移 + ˚F)。
我错过了什么?
答案 0 :(得分:13)
答案有点晚。只是解决了同样的问题...
很多东西都可以控制。为了使它更正,还花费了我很多实验。对我来说,下面的第3点是使它起作用的最后一个技巧。在此之前,我注意到编辑器加载了4,但又跳回到了2个空格。现在它保持在4。
要检查的一些事情:
1:VS代码配置(“设置和工作区”,您可以将其设置为系统范围的配置,也可以仅设置为当前工作区): 检查是否已设置:
"editor.tabSize": 4,
"editor.insertSpaces": true,
"editor.detectIndentation": false
以及特定于语言的设置(可选):
"[javascript]": {
"editor.tabSize": 4
},
"[typescript]": {
"editor.tabSize": 4
}
2:是否有任何可能影响缩进的扩展->人们报告了JS-CSS-HTML也可以配置该设置。
3:工作空间中是否有.editorconfig文件?如果是这样,请检查那里的设置。例如,Angular创建一个并配置indent_size:
# Editor configuration, see http://editorconfig.org
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
max_line_length = off
trim_trailing_whitespace = false
大多数答案都集中在第1点,但对我而言,最后一步对于使VS Code正常工作很重要。
此堆栈溢出处理上述所有问题的方式不同: Visual Studio Code: format is not using indent settings
答案 1 :(得分:3)
我已在VisualStudio设置(1.31)中对其进行了修复
转到:设置>工作区设置>文本编辑器
取消选中“检测缩进”以保持默认设置。
答案 2 :(得分:1)
在许多情况下,是 Prettier
导致了这种情况。事实上,它只是忽略了@Oskar 的回答中列出的所有设置。
所以它需要被显式覆盖:
"prettier.tabWidth": 4,
"prettier.useTabs": true
然后只需转到您的文件并点击Ctrlk、Ctrld,以及正确的缩进应该申请。
答案 3 :(得分:0)
小心;此扩展 EditorConfig for VS Code 会干扰 vscode 选项卡和缩进设置。它默认安装,但它是一场噩梦。禁用它会解决你所有的问题。
答案 4 :(得分:0)
与之前的答案略有不同。我有一个文件类型的缩进错误,我只想更正那个文件。
(如果您必须知道:这个 Python 脚本最初是文本文件,其中包含一些查询。我从 psql 的 -E \d
echo 查看 postgres 模式中得到它)。
无论如何,这个文件现在是一个带有 2 个空格缩进的 Python .py 文件。不是应该通过修改常规 vscode 设置来解决的问题。
我做了什么:
2 Spaces
Convert Indentation to Tabs
。现在它说 Tab size 2
Convert Indentation to Spaces
。现在对话框更改为建议缩进大小:2
被选中。选择 4
或您想要的任何尺寸。