Vim
Vim 模式
正常模式
以 vim 打开一个文档就直接进入一般模式了(这是默认)的模式,你可以使用
↑
、↓
、←
、→
按键来移动光标,你可以使用【删除字符】或【删除整行】命令来处理文档内容,也可以使用【复制】和【粘贴】命令来处理你的文件数据插入模式/编辑模式
按下
i
、o
、a
进入编辑模式,一般来说输入i即可在这个模式下,程序员可以输入内容
按
ESC
键退出到正常模式命令行模式
在这个模式当中,可以执行相关指令,完成读取、存盘、替换、离开 vim、显示行号等动作
按
ESC
键退出到正常模式。
光标移动
- 上下左右
- n + 上下左右:向该方向移动 n 行或 n 个字符
- 0 或 Home:光标移动到行首
- $ 或 End:光标移动到行尾
- G:光标移动到文件最后一行
- n + G:光标移动到第 n 行
- gg:光标移动到文件首行
- Ctrl + F:向下翻页
- Ctrl + B:向上翻页
状态改变
- 显示行号:
:set number
- 隐藏行号:
:set nonumber
- 撤销:u
- 重做:Ctrl + r
插入
- i:在光标前插入
- I:在当前行的第一个非空字符前插入
- o:在光标下面新建一行输入
- O:在光标上面新建一行输入
- a:在光标后插入
- A:在当前行最后插入
:r filename
在当前光标的下一行插入另一个文件的内容:[n]r filename
在第 n+1 行插入另一个文件的内容
删除
[n] + x:向后删除 n 个字符
[n] + X:向前删除 n 个字符
dd:删除光标所在那一行
[n] + dd:从光标所在那一行起,向下删除 n 行
复制与剪切
- yy:复制光标所在这一行
- n + yy:从光标所在这一行开始向下复制 n 行
- [n] + x:向后剪切 n 个字符
- [n] + X:向前剪切 n 个字符
粘贴
- p:在光标之后粘贴
- P:在光标之前粘贴
查找
/ + 字符串:查找字符串并高亮显示,n 表示向上查找,N 表示向下查找,退出高亮显示使用 :nohlsearch
替换
:s/old/new
:用 new 替换行中首次出现的 old:s/old/new/g
:用 new 替换行中所有的 old:n,m s/old/new/g
:用 new 替换从 n 到 m 行里所有的 old:%s/old/new/g
:用 new 替换当前文件里所有的 old
多窗口
:sp filename
:水平分屏打开新窗口,不给定文件名就是指当前文件再打开一个:vsp filename
:垂直打开新窗口,不给定文件名就是指当前文件再打开一个Ctrl + ww:切换窗口之间的光标