VS Code中基于语言的设置不起作用

时间:2020-04-07 10:36:58

标签: visual-studio-code vscode-settings

我正在尝试为几种语言添加基于语言的设置。为此,我对文件settings.json进行了修改(有关更多信息,请参见Configure language based settings in 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"被禁用。但是由于某些原因,编辑器无法获得以下设置: Screenshot of the code snippet written in Dart 因此,IndentRainbow扩展名无法正常工作。在下面的栏中,您可以看到VS代码的制表符大小仍然为“ 4”。

如果我更改了制表符大小(editor.tabSize)的全局设置,则VS Code只是设置了新值,例如2,然后我在所有文件和所有语言中都将这个值用于缩进。更改设置后,我还尝试重新启动VS Code,但没有帮助。我该怎么做才能使我想要的东西正常工作?

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

1 个答案:

答案 0 :(得分:1)

我自己发现了问题所在。在扩展名标签下,我具有EditorConfig扩展名。此扩展名始终会覆盖用户和工作空间设置。我只是禁用了此扩展程序。

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