VSCode手动插入制表符

问题描述 投票:0回答:7

使用 VSCode 时,我的大多数文件都设置为使用空格缩进。然而,我有时希望插入一个文字选项卡。当我使用 vim 时,我会使用 +v 但这不适用于 VSCode。

我一直在寻找,却找不到任何东西。请帮忙!

tabs visual-studio-code
7个回答
100
投票

快速而肮脏的解决方案:在其他地方找到一个选项卡,然后复制粘贴。

您正在编辑的文件中可能已经有制表符,但如果没有,您可以在另一个应用程序或文本编辑器中生成一个制表符。

您还可以使用以下命令在 bash shell 中以编程方式生成选项卡(括号是可选的):

echo -e [\\t]

为了满足您更直接的需求,我在下面插入了一个制表符...

 这些括号之间有一个制表符:[&#9]

另一种方法是暂时更改选项卡模式,如此处所示。


76
投票

我不确定是否有通用的解决方案,但您可以为此设置一个keybound

{
    "key": "ctrl+v tab",
    "command": "type",
    "args": { "text": "\t" },
    "when": "editorTextFocus"
}

即使当前模式为空格,此键绑定也会插入制表符。


44
投票

<Alt> <Numpad: 0 0 9>

效果仍然很好!


2
投票

在处理 Makefile 时,我使用正则表达式进行查找/替换。

^    
(4 个空格 - 根据需要更改)替换为
\t


2
投票

奇怪的是,Visual Studio Code 给了你一个线索,但你必须去寻找它。

关闭 “编辑器:检测缩进”,默认为 ON

之后,它不会假设一个制表符是 4 个空格。

当然,你所要做的就是选择你的空间,然后你会在你的选择中看到“鬼点”。 如果您删除这些空格,然后输入制表符,那么当您选择它时,您现在将看到 1 个“幽灵右箭头”,这意味着现在您确实有了一个制表符。


0
投票

好吧,我终于有了一个不错的答案。您可以覆盖 VSCode 和 VSCodium 用户键绑定以允许插入硬编码的“制表符”字符。

作为一点背景知识,我的大部分代码都是空格字符缩进,但我时不时地在 Shell 脚本中编写一个“Here Document”,然后我希望将“EOF”字符串缩进到与正文相同级别。

为此,我需要插入“

\t
”字符,而不是空格。

这是我的解决方案:

转到“设置”→“键盘快捷键”→“打开键盘快捷键(JSON)”→单击右侧面板,应为“用户> keybindings.json”。

插入(或更新)以下 JSON:

[
    {
        "key": "ctrl+v tab",
        "command": "type",
        "args": { "text": "\t" },
        "when": "editorTextFocus"
    },
    {   "key": "ctrl+i",
        "command": "type",
        "args": { "text": "\t" },
        "when": "editorTextFocus"
    },
]

这允许您使用

Ctrl-V
后跟
Tab
Ctrl-I
来插入
Tab
字符。


-2
投票

您可以关闭 editor.insertSpaces

© www.soinside.com 2019 - 2024. All rights reserved.