奇怪的是谷歌并没有给出这个问题的答案:
我正在使用 Visual Studio 1.56.0(用户设置),并且想要配置一个编辑器,以便当我按下 Tab 键时输入适当数量的空格,而不是插入物理制表符。
我发现了关于该主题的一些讨论,我发现的建议包括使用以下之一:
工具->选项->文本编辑器->所有语言->选项卡
首选项 -> 源代码 -> 代码格式
编辑->高级->设置缩进->空格
这些解决方案都不起作用,因为
我没有看到名为“工具”的菜单(我只有文件、编辑、选择、查看、转到、运行、终端和帮助)
我在“文件”菜单下有一个“首选项”项,但它却没有名为“源代码”的条目。
“编辑”菜单下没有“高级”项。
对我来说,找到此类选项的合理位置是文件/首选项/文本编辑器/格式,但该部分中没有制表符->空格选项。
更新,根据 harrymc 给出的答案:
我知道 Visual Studio Code(我使用的)是与 Visual Studio 不同的文本编辑器。
有趣的是,用户和工作区设置显示的屏幕截图与我的 Visual Studio Code 显示的屏幕截图不同:在网站中,设置应该可用于“用户”或“工作区”(在那一侧的屏幕截图中可以看到两个同名的选项卡),而在我的编辑器中,设置页面仅显示“用户”。但是我不认为这与我的问题有关,因为当我在这些用户设置中选择“常用”并向下滚动时,我确实看到了一个名为编辑器:插入空格带有描述
按 Tab 键时插入空格
这应该正是我所寻找的选项。然而,做已设置复选标记,但我的文件仍然有制表符。
我注意到在这个设置旁边我们可以找到这样的注释:当“编辑器:检测缩进”打开时,此设置将根据文件内容被覆盖。 的确,检测缩进也有一个复选标记,但我取消了复选标记。
我以为这样就可以解决问题了,但事实并非如此。重复一遍:我知道有
Detect Indentation: unchecked
Insert Spaces: checked
我现在创建了一个新文件,输入了一个制表符和一些其他字符,然后保存了该文件。我可以看到新文件中也有一个物理制表符。
答案1
您正在使用 Visual Studio Code 而不是 Visual Studio,这就是您发现的建议与您不相关的原因。
帖子 基本编辑:缩进 说:
VS Code 允许您控制文本缩进以及是否要使用空格或制表位。默认情况下,VS Code 会插入空格,并且每个 Tab 键使用 4 个空格。如果您想使用其他默认设置,可以修改
editor.insertSpaces
和editor.tabSize
设置。"editor.insertSpaces": true, "editor.tabSize": 4,
如果未设置以下设置,则有时按下标签时无法检测到标签:
"editor.detectIndentation": true
有关详细信息,请参阅For more information, see 用户和工作区设置。
请注意,一旦这些设置发生变化,现有文件不会自动转换,因为它们只会影响将来按下的 Tab 键。
用户 megamorf 的评论:
有时 VSCode 会保留当前打开的文件的旧设置。在这种情况下,打开文件并在右下角单击
Spaces
并选择Convert Indentation to Spaces
。