什么是vim
vim 是源于 linux 的一款文本编辑器,在 vi 基础上开发,具有强大的文本编辑能力和跨平台
Vimtutor是 Vim 内置应用 快捷键练习模块
Vim 的三种模式
命令行模式(Command mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入 Insert mode 下,或者到 last line mode。
插入模式(Insert mode)
只有在 Insert mode 下,才可以做文字输入,按「ESC」键可回到命令行模式。
底行模式 (Lastline mode)
将文件保存或退出 vim,也可以设置编辑环境,如寻找字符串、列出行号…… 等。
zz 保存退出
从命令行模式切换为插入模式
功能 | 说明 |
---|---|
从当前光标位置的下一个字符 且 进入插入模式 | 「 a 」 |
从当前光标位置的下一行 且 进入插入模式 | [ o 」 |
从当前光标位置 且 进入插入模式 | 「 i 」 |
从当前光标位置的行尾 且 进入插入模式 | 大写字母「A」 |
从当前光标位置的上一行 且 进入插入模式 | 大写字母[O] |
删除光标所在位置,到行尾的内容 且进入插入模式 | 大写字母[C] |
从插入模式切换为命令行模式
按「ESC」键
移动命令
功能 | 说明 |
---|---|
光标移动到本行开始 | 按下数字0 |
光标移动到本行末尾 | 按下$ |
光标移动到屏幕第一行的开始 | 按下H |
光标移动到文件最后一行的开始 | 按下大写 G |
光标移动到文件的第n行的开始 | nG |
光标移动到文件的第一行的开始 | 按下 gg |
移动到屏幕的中间 | 按下 M |
移动到下一个单词 | 按下 W |
移动到上一个单词 | 按下 b |
功能 | 说明 |
---|---|
向左 | 按下h |
向下 | 按下j |
向上 | 按下k |
向右 | 按下l |
搜索与替换命令
字符串查找 功能 | 说明 |
---|---|
从光标位置向下查找 word字符串 | /word |
从光标位置向上查找 word字符串 | ?word |
重复前一个搜索的动作 | 按下n |
反向 重复前一个搜索的动作 | 按下N |
底行模式
功能 | 说明 |
---|---|
文件存盘并退出 vim | :wq |
文件不存盘并退出 vim | :q |
文件不存盘强制退出 vim | :q! |
filename 文件以 filename 为文件名保存 | :w |
删除 复制 粘贴
功能 | 说明 |
---|---|
删除光标后面的一个单词 | 「d」「w」 |
删除光标后面的一个单词,无视单词前面的空格 | 「d」「e」 |
从当前光标处删除到行末 (把光标停留在需要删除的句子前面) | 「d」「$」 |
复制光标所在行 | [y] [y] |
删除光标当前行 | 「d」「d」 |
连续删除两行 | 「2」「d」「d」 |
将刚删除 或者复制 的内容置入其他行 (类似windows的「剪切」操作) 打印粘贴的内容 |
「p」 |
删除光标当前位置到行尾的内容 | 输入D |
---|---|
删除光标当前字符,向后删除 | 输入x |
删除光标当前字符,向前删除 | 输入X |
撤销更改
功能 | 说明 |
---|---|
撤销上一步的更改操作 | 按小写字母「u」 |
撤销整行的更改操作 | 按大写字母「U」 |
撤销上一步「撤销操作」 | 「Ctrl+R」 |
跳转
功能 | 说明 |
---|---|
顶部跳转命令 | 先按「Control」+「g」键 在终端底部调出一栏,然后输入「g」「g」 |
底部跳转命令 | 先按「Control」+「g」键,在终端底部调出一栏,然后输入大写字母「g」 |
特定行跳转命令 | 直接输入行号,然后输入大写字母「g」 |