两种模式
VIM有两种模式,模式的行为也不同:
- Insert Mode(插入模式):这种模式下可插入任何文本
- Normal Mode(常规/命令模式):此种模式下输入的字符是命令
在命令模式下输入:set showmode 可在编辑器下方显示当前所处模式
在普通模式下,我们可以通过h、j、k、l来进行左、下、上、右移动光标,当然你可以可以使用键盘上的方向键来进行移动。
基本编辑操作
下面主要说明在Normal模式下,Vim的基本操作。因为在Insert模式下,文本编辑方式和我们常用一般无异,不再赘述。
插入字符
在Normal Mode下输入i,可进入Insert Mode模式下即可输入字符
移动光标
单个字符移动
在Normal Mode下,可用h、j、k、l来进行左、下、上、右移动光标,当然你可以可以使用键盘上的方向键来进行移动。
在Insert Mode下,可通过方向键来进行移动。
按单词移动
按单词向前移动(移动到下个单词之前)的话,可用w ,如果在w前添加数字,可表示移动几个单词,如:3w。对应的,按单词向前移动的话,可用b 。
e 可移动到当前单词末尾
移动到行尾/行首
$ 可移动到行尾
^ 可移动到行首
当然,如果你键盘有home和end键,可实现同样的效果。
命令前面增加数字,可实现移动到N行后行尾/行首
移动到当前行某个字符
fx 表示移动到当前行x的字符前。这个是向前搜索移动。对应的 Fx 表示向后搜索移动。
删除字符
单字符删除:x
行删除:dd,连续按两下d可删除光标所在行。
换行删除:J,大写j可删除光标所在行的换行。
回退/撤销
撤销上次的更改:u
如果使用了多次u,导致多回退了,同通过ctrl+R来撤销u
追加
a命令可对光标后面进行追加字符
添加空行
o可在当前光标所在行下面开辟一个空行
多次执行追加、删除等
当我们需要追加3个字符p时,我们可以在Normal模式下输入 3aP
退出操作
“ZZ”可保存并退出编辑器。
但有时候如果修改后,但你并不想保存可输入**:q!**退出。
如果你不想退出,而想要重新编辑可输入**:e!**,表示重新加载原文件。