Vim是一种Linux下最常用的编辑器。
所有的编辑器都会有插入和执行命令两种模式。
一般的编辑器会使用键盘和鼠标来完成指定功能。通过键盘和鼠标的单独操作和组合操作可以实现比较复杂的功能,甚至可以通过使用宏定义来实现更高级的功能。
但是在Vim中,所有的功能都是通过键盘来实现的。
Vim具有6种基本模式和5种派生模式,我们这里只简单介绍下6种基本模式:
- 普通模式
- Vim启动后的默认模式,与其他编辑器相反(编辑器启动后一般为插入模式)。
- 普通模式下有很多命令,这些命令可以组合,从而实现多种多样的编辑效果。
- 普通模式下,按a键或者i键即可进入插入模式。
- 插入模式
- 插入模式下,我们可以编辑文本。
- 按Esc键即可回到普通模式。
- 可视模式
- 可视模型下,移动命令会扩大光标区域。光标区域可以是字符,行,文本块。
- 当执行一个非移动命令时,命令会被执行到这块高亮的区域上。
- 选择模式
- 这个模式和无模式编辑器比较像。
- 使用光标键或者鼠标高亮一块区域,输入任意字符,便可替换高亮区域的文本。并进入插入模式。
- 命令行模式
- 使用:进入命令行模式。
- 命令行模式下的输入会被执行。通常为文本操作(如:保存,退出,强制退出等命令),搜索,过滤等命令。
- Ex模式
- 在使用:visual命令离开Ex模式前,可以一次执行多条命令。
在这六个模式中,最常用的模式是:普通模式,命令行模式,插入模式。下面是三种常用模式的切换。
初体验Vim
- 使用vim命令进入vim界面
- vim filename
- vim; :e 路径
游标移动
在普通模式下:按键 说明 h 左 l 右(小写L) j 下 k 上 w 移动到下一个单词 b 移动到上一个单词 进入插入模式
按键 说明 i 在当前光标处进行编辑 I 在行首插入 A 在行末插入 a 在光标后插入编辑 o 在当前行后插入一个新行 O 在当前行前插入一个新行 cw 替换从光标所在位置后到一个单词结尾的字符 退出vim
命令行下退出Vim
按键 说明 :q 退出 :q! 强制退出,不保存 :w <文件路径> 另存为 :saveas 文件路径 另存为 :x 保存并退出 :wq 保存并退出 :wq! 强制保存并退出 普通模式下退出Vim
- Shift+zz即可退出
- 使用vim命令进入vim界面
接下来的几节,我将详细的讲述一下vim的一些使用技巧。本节就先到这里。
补充知识:
1. vim的精髓就在于命令键的组合,全键盘的操作,可以使你收不离开键盘输入区域即可完成所有的操作。
2. 还有一款与Vim类似的编辑器:Emacs。有关两者的关系可以看一下网页。Emacs和Vim:神的编辑器和编辑器之神
3. vim为什么会使用hjkl作为光标移动键?可以看看一下链接ADM-3A,说不定你会从中得到启发。