使用VSCode中的制表符保留缩进或缩进的间距

时间:2018-11-15 18:51:23

标签: visual-studio-code auto-indent

在VSCode中,当我有以下内容时:

    /*
     * Comment
     */

如果我选择它并点击选项卡,则会得到:

        /*
        * Comment
        */

相反,如果我按了shift-tab,则会得到:

/*
    * Comment
    */

Ctrl-]Ctrl-[ (如果应该有所作为)也会发生

我希望关闭autoIndent可以停止此操作,但不要掷骰子。我还关闭了JSON配置中的C ++格式:

{
    "editor.autoIndent": false,
    "editor.detectIndentation": false,
    "C_Cpp.formatting": "Disabled"
}

有一个扩展名shifts text by one character at a time,这是一种概念验证,您可以使用类似的方法覆盖Tab键。但是看来您不需要扩展程序才能禁用此格式。

editor.autoIndent: false是否应该做我想要的事情,并且刚刚坏了?

更新:我也将其作为issue on the VSCode GitHub

提出来。

1 个答案:

答案 0 :(得分:2)

如果将Tab的大小设置为1,它将完成与您引用的扩展名相同的工作。

您可以通过点击右下角 角来设置TabSpace的大小:

Change Tab/Space size

单击Spaces:4。然后,选择使用空格缩进使用标签缩进,然后选择大小 1

更新:

我找到了一种完全满足您要求的方法(尽管通过扩展)。在选择{/ {1}}的制表符/空格大小后,安装并加载 multi-command 扩展名以执行1个空格缩进“ ”次。然后,转到您的1(“文件”>“偏好设置”>“设置”)并添加以下两个命令:

settings.json

然后,在 keybindings.json 文件( CTRL + P ,然后键入{ "macros": { "tab4times": [ "tab", "tab", "tab", "tab" ], "shifttab4times": [ "outdent", "outdent", "outdent", "outdent" ] } } )中,修改 CTRL + ] CTRL + [键来执行新创建的命令:

keybindings.json

保存这些配置后,转到您的文本。现在,按 CTRL + ] CTRL + [来查看您期望的缩进行为 outdentation ,分别。

希望有帮助。