vim学习总结(一)

vim模式介绍

几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数的编辑器使用了与Vim截然不同的方式:命令目录(鼠标或者键盘驱动),组合键(通常通过CTRL键和ALT键组成)或者鼠标输入。从vi衍生出来的Vim具有多种模式,用户可以不用菜单或者鼠标,仅仅通过键盘在这些模式之间切换,并且最小化组合键的操作。熟练使用vim可大大增强文字工作者或者程序员的效率。

1.普通模式(Normal mode)

在普通模式中,用的是编辑器的命令,如移动光标、删除文本等。vim启动后的默认模式即为普通模式。
vim强大的编辑能力就是来自于普通模式命令,普通模式命令往往需要一个操作符结尾。例如普通模式命令dd表示删除当前行,但d+移动命令就表示不同的意义,如dj就可以删除当前行和下一行,其他移动命令组合读者可自行尝试。另外命令结合数字可以指定命令重复执行的次数,如2dd等。

  • 光标移动

普通模式下,用户可以使用方向键或者hjkl键移动光标。

按键 说明
h 左移
j 右移
k 下移
l 上移
w 移动到下一个单词
b 移动到上一个单词
  • 模式切换

vim启动默认进入普通模式,处于插入模式或命令模式时,只需要按Esc或者Ctrl+[即可进入普通模式。普通模式中按i(插入)或a(附加)键都可以进入插入模式。普通模式中按:进入命令行模式。命令行模式中输入wq+回车后保存并退出vim。

  • 文档保存

从普通模式输入:进入命令模式,输入w回车即可保存文档,输入:w 可以将文档另存为其他文件名或保存到其它路径下。

  • 删除文本

进入普通模式,使用下列命令可以进行文本快速删除:

命令 说明
x 删除光标所在位置字符
X 删除光标所在前一位置字符
Delete x
dd 删除整行
dw 删除当前位置往后一个单词
d$D 删除至行尾
d^ 删除至行首
dG 删除至文档结尾
d1G 删除至文档首部
2dd 删除2行
  • 退出vim

从普通模式下输入:进入命令行模式,输入wq回车即可保存并退出编辑,其他几种退出方式如下:

命令 说明
:q! 强制退出,不保存
:q 退出,不保存
:wq! 强制退出并保存
:w 另存为
:saveas 另存为
:x 保存并退出
:wq 保存并退出
Shift+zz 保存并退出

2.插入模式(Insert mode)

在这个模式中,大多数按键都会向文本缓冲中插入文本。在插入模式中,可以按ESC键回到普通模式。在普通模式下,可以使用下面的键进入插入模式:

命令 说明
i 在当前光标处插入
I 在行首插入
A 在行尾插入
a 在当前光标后插入
o 在当前行后插入新行
O 在当前行前插入新行
cw 替换从光标处开始的单词并进入插入模式

3.可视模式(Visual mode)

这个模式与普通模式比较相似,但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上,vim的“文本对象”也能和移动命令一样用在这个模式。

4.选择模式(Select mode)

这个模式和无模式编辑器的行为比较相似,在这个模式中,可以用鼠标或者光标键高亮选择文本,不过输入任何字符的话,vim会用这个字符替换选择的高亮文本块,并且自动进入插入模式。

5.命令行模式(Command mode)

在命令行模式中可以输入会被解释并执行的文本,例如:执行命令(:),搜索(/?)或者过滤命令(!)。在命令执行后,vim返回到命令行模式之前的模式,通常是普通模式。

6.Ex模式(Ex mode)

Ex模式和命令行模式比较相似,在使用:visual命令离开Ex模式前,可以一次执行多条命令。
Ex模式功能非常强大,可以详细学习


参考资料

  • VIM在线手册

  • Emacs和Vim:神的编辑器和编辑器之神

  • ADM-3A

你可能感兴趣的:(vim学习总结(一))