为什么在编辑Makefile和“ editor.insertSpaces”:“ auto”时Visual Studio Code插入空格?

Car*_*imi 3 makefile visual-studio-code

make不喜欢Makefile中目标对象的空格。必须是一个标签。

我将“ editor.insertSpaces”更改为“自动”,认为这会有所帮助。没有。

为了使代码正常工作,我必须将其设置为false。

Lor*_*ren 6

现在可以通过“特定语言设置”来实现。 https://code.visualstudio.com/docs/getstarted/settings#_language-specific-editor-settings

要按语言自定义编辑器,请从“命令面板”(??P)中运行全局命令“偏好设置:配置特定于语言的设置”(命令ID:workbench.action.configureLanguageBasedSettings),这将打开语言选择器。选择所需的语言,打开带有语言条目的“设置”编辑器,您可以在其中添加适用的设置。

打开编辑器后,输入以下配置 [makefile]

{
    "[makefile]": {
        "editor.insertSpaces": false,
        "editor.detectIndentation": false
    }
}
Run Code Online (Sandbox Code Playgroud)


lan*_*all 4

VS Code 确实准确地猜测了 a 的文件类型Makefile,但语言配置没有指定选项卡样式。有一个未完成的拉取请求可以解决此问题。

在该 PR 发布之前,您可以通过编辑应用程序本身来在本地修复此问题。在 OSX 上,应用程序实际上只是文件夹,您可以Makefile在 中找到 s的语言配置Visual Studio Code.app/Contents/Resources/app/extensions/make。打开make.configuration.json并添加"insertSpaces": false到第 2 行。这对我来说解决了这个问题。