Vim作为一种流行的编辑器,在插入模式下编辑文本是其提供的最基本功能。本文介绍几种Vim插入模式下用于减少按键、提高效率的小技巧。

1. 插入模式下如何删除字符

在Vim插入模式下,除了可以使用退格键(Backspace)删除光标前的字符外,还可以使用组合键 <Ctrl-h> 来删除光标前一个字符;

此外,插入模式下还可以使用组合键 <Ctrl-w> 来删除光标前一个单词,使用组合键 <Ctrl-u> 删除至当前行行首。

Vim-tips

:上述的3个组合键并不是Vim插入模式所独有,在Vim的命令行模式以及bash shell中,均可以使用它们完成相同的删除功能。

2. 插入-普通模式

Vim插入模式只用于输入文字,这是编辑器最基本的功能;而Vim普通模式却是使用Vim时最常用的模式。

在日常场景中,经常出现在插入模式下想运行一个普通模式命令后再返回到插入模式继续编辑的场景,Vim为此提供了一种非常巧妙的方式来减少模式切换所带来的不畅及代价,这就是:Vim插入-普通模式。在该模式下,可以不退出插入模式而直接执行一个普通模式命令。

插入模式下使用组合键 <Ctrl-o> 便可进入插入-普通模式。

例如,当编辑的当前行处于Vim窗口顶部时,为了看到已经编写完的上一个段落的内容,可以使用 <Ctrl-o>zz 命令,使得Vim自动从插入模式切换到普通模式并执行命令 zz 重绘屏幕,将当前行显示在窗口的正中间。

Vim实用技巧

上述的整个过程中,并不需要人为地使用 Esc 退出到普通模式后执行下 zz 命令,再使用 a 命令继续进入到插入模式进行编辑,极大地提高了工作效率。关于Vim提供工作效率的技巧,推荐阅读Vim中的重复操作与高效率

3. 不离开插入模式粘贴寄存器中的文本

在插入模式下,使用 <Ctrl-r>{register} 可以将Vim寄存器 register 中的内容插入到当前光标下。

例如,假设Vim的复制专用寄存器0中保存的内容为 https://vim.ink,在Vim插入模式下,可以使用命令 <Ctrl-r>0 把复制的文本https://vim.ink粘贴到光标所在位置。

4. 插入模式下做计算

在插入模式下,输入组合键 <Ctrl-r>= 将使用Vim的表达式寄存器,在屏幕下方显示的提示符后,可以输入要执行的表达式并按下回车键,Vim就会把输入表达式对应的执行结果插入到光标的当前位置下。

假设在插入模式下刚输入完以下内容:

1
Vim教程网平均每天的pv为1100,按每个月31天计算,Vim教程网一个月的总pv为

插入模式下直接执行命令 <Ctrl-r>=1100*30 便可将总pv数输入到当前光标位置处。

Vim表达式寄存器

嗯,扫一扫就可以找到小女子我啦~