使用 VSCode 时,我的大多数文件都设置为使用空格缩进。然而,我有时希望插入一个文字选项卡。当我使用 vim 时,我会使用
我一直在寻找,却找不到任何东西。请帮忙!
快速而肮脏的解决方案:在其他地方找到一个选项卡,然后复制粘贴。
您正在编辑的文件中可能已经有制表符,但如果没有,您可以在另一个应用程序或文本编辑器中生成一个制表符。
您还可以使用以下命令在 bash shell 中以编程方式生成选项卡(括号是可选的):
echo -e [\\t]
为了满足您更直接的需求,我在下面插入了一个制表符...
这些括号之间有一个制表符:[	]
另一种方法是暂时更改选项卡模式,如此处所示。
我不确定是否有通用的解决方案,但您可以为此设置一个keybound:
{
"key": "ctrl+v tab",
"command": "type",
"args": { "text": "\t" },
"when": "editorTextFocus"
}
即使当前模式为空格,此键绑定也会插入制表符。
<Alt> <Numpad: 0 0 9>
效果仍然很好!
在处理 Makefile 时,我使用正则表达式进行查找/替换。
将
^
(4 个空格 - 根据需要更改)替换为 \t
。
奇怪的是,Visual Studio Code 给了你一个线索,但你必须去寻找它。
关闭 “编辑器:检测缩进”,默认为 ON。
之后,它不会假设一个制表符是 4 个空格。
当然,你所要做的就是选择你的空间,然后你会在你的选择中看到“鬼点”。 如果您删除这些空格,然后输入制表符,那么当您选择它时,您现在将看到 1 个“幽灵右箭头”,这意味着现在您确实有了一个制表符。
好吧,我终于有了一个不错的答案。您可以覆盖 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
字符。
您可以关闭 editor.insertSpaces。