首页 > 解决方案 > VS Code 中基于语言的设置不起作用

问题描述

我正在尝试为多种语言添加基于语言的设置。为此,我修改了文件settings.json(有关详细信息,请参阅在 VS Code 中配置基于语言的设置),如下所示:

{
    "editor.tabSize": 4,
    "editor.detectIndentation": false,
    "editor.formatOnSave": true,
    "vsicons.dontShowNewVersionMessage": false,
    "[dart]": {
        "editor.tabSize": 2
    },
    "[typescript]": {
        "editor.tabSize": 4
    },
    "[c]": {
        "editor.tabSize": 4
    }
}

如您所见,我将 Dart 的选项卡大小选项设置为 2,对于其他语言设置为 4。缩进的默认值为 4 并且"editor.detectIndentation"被禁用。但是由于某种原因,编辑器没有得到这些设置: 用 Dart 编写的代码片段截图 由于这个原因,IndentRainbow扩展不能正常工作。在下面的栏中,您可以看到 VS 代码的选项卡大小仍然为“4”。

如果我更改制表符大小editor.tabSize(更改设置后,我还尝试重新启动 VS Code,但没有帮助。我该怎么做才能使我想要的东西正常工作?

settings.json保存在C:\Users\MyName\AppData\Roaming\Code\User\

标签: visual-studio-codevscode-settings

解决方案


我自己发现了问题所在。在扩展选项卡下,我有EditorConfig扩展。此扩展始终覆盖用户和工作区设置。我只是禁用了这个扩展。

另一种可能的解决方案是.editorconfig在项目所在的文件夹中创建一个文件,并在那里指定选项卡大小。


推荐阅读