如何在Vim中启用expandtab选项时插入制表符

如何在Vim中启用expandtab选项时插入制表符,vim,Vim,当我处于插入模式,并且打开选项时,按Tab键↹ 导致插入配置的空间数 但有时我想插入一个实际的制表符 你知道怎么做吗?你可以在“插入模式”中使用。在插入模式下,插入下一个字符的文本副本 如果您需要经常这样做,@Dee`Kej建议(在评论中)设置Shift+Tab以插入具有此映射的实际选项卡: :inoremap <S-Tab> <C-V><Tab> :inoremap 此外,如@feedbackloop所述,在Windows上,您可能需要按,而不是,您可以

当我处于插入模式,并且打开选项时,按Tab键↹ 导致插入配置的空间数

但有时我想插入一个实际的制表符

你知道怎么做吗?

你可以在“插入模式”中使用
。在插入模式下,
插入下一个字符的文本副本

如果您需要经常这样做,@Dee`Kej建议(在评论中)设置Shift+Tab以插入具有此映射的实际选项卡:

:inoremap <S-Tab> <C-V><Tab>
:inoremap

此外,如@feedbackloop所述,在Windows上,您可能需要按
,而不是

,您可以从Vim中禁用expandtab选项,如下所示:

:set expandtab!

PS:并在插入选项卡、使用“set expandtab”或“set et”时将其设置回原位

PS:如果您在.vimrc(softtabstop)中有相当于4个空格的制表符集,您也可以将其设置为8个空格,以便通过按tab键一次而不是两次(set softtabstop=8)插入制表符。

来自以下文档:

要在启用时插入实际选项卡,请使用
。另请参见和。
当 重置该选项时,将设置并恢复该选项

因此,如果您有用于切换
粘贴
选项的映射,例如

set pastetoggle=<F2>
设置粘贴切换=

如果要插入多个选项卡,也可以执行
选项卡

,然后使用
重复上一个命令。由于处于命令模式,因此使用此组合时遇到一些问题。请确保在编辑模式下执行此命令。注意:如果在Windows上使用gVim,则可能需要使用
CTRL
+
Q
-请参见我刚才介绍的一个简单快捷方式,它似乎正在工作(不破坏任何其他功能):
inoremap
——您可以将其放入
~/.vimrc
文件中。@TriNguyen很可能您的操作系统正在使用Shift+Tab进行其他操作,而vim从未看到它。当vim处于活动状态时,您可以禁用此键绑定,或者只选择操作系统未使用的内容。简言之:
设置et
设置noet
以根据需要切换
选项卡和
空格
。Ctrl+V导致发生粘贴,我没有时间调整键绑定。这有帮助
set pastetoggle=<F2>