在Visual Studio Code中使用Format Code命令时,它不尊重我的缩进设置(“editor. exe”)。tabSize": 2).它使用的是4的标签大小。知道为什么会这样吗?

谢谢!


当前回答

我有时也有同样的问题。VSCode会突然失去理智,完全忽略我告诉它的任何缩进设置,即使它一整天都在缩进同一个文件。

我有编辑。tabSize设置为2(以及编辑器。formatOnSave设置为true)。当VSCode弄乱一个文件时,我使用编辑器底部的选项来改变缩进类型和大小,希望一些东西会工作,但VSCode坚持实际使用缩进大小为4。

这是固定的吗?重启VSCode。它应该返回缩进状态,显示一些错误(在我的情况下,4)。对我来说,我必须改变设置,然后保存它才能真正做出改变,但这可能是因为我的编辑器。formatOnSave设置。

我还没有弄清楚为什么会发生这种情况,但对我来说,通常是当我在JS文件中编辑嵌套对象时。它会突然在对象中做非常奇怪的缩进,尽管我已经在那个文件中工作了一段时间,它的缩进很好。

其他回答

我有一个类似的问题-无论我做什么,我不能让tabsize为2,即使它是在我的用户设置-这最终是由于EditorConfig扩展。它在当前工作目录中查找.editorconfig文件,如果没有找到(或者找到的文件没有指定root=true),它将继续查找父目录,直到找到一个。

结果发现,在我把所有新代码项目放在其中的dir的父目录中有一个.editorconfig,它指定tabSize为4。删除该文件解决了我的问题。

VSCode插件Vetur;用于VueJS应用程序正在覆盖我的设置。

将vetr .format.options. tabsize设置为我喜欢的空格数就可以工作了。

如果你使用插件(在我的例子中,Vetur, vue.js),这些可以设置自己的选项卡格式设置。

打开你的设置,搜索“format”并查看相关的插件设置,这些设置可能会覆盖全局选项卡格式。这对我很管用;一旦我更新了Vetur选项卡设置以匹配我的偏好(在我的情况下是4个大小的选项卡),格式化.vue文档开始正常工作:

我认为vscode默认使用autopep8来格式化.py。

PEP 8——Python代码风格指南| Python.org

根据这个网站,下面可以解释为什么vscode总是使用4个空格。

每个缩进层使用4个空格。

如果你从谷歌来到这里,因为tab不缩进,这也可能是因为“tab移动焦点”是打开的。它在右下角,如果你有一个足够大的显示器,你可能会错过它,尽管它是突出显示的。

点击绿色区域或Ctrl + M使它停止。我不确定它是否可以完全禁用,我也不知道为什么代码编辑器会想要搞砸缩进之类的东西。