Vim快捷键整理
目录:
[TOC]
参考文档:http://www.jianshu.com/p/bcbe916f97e1
1.简介
1.命令行输入 $vim [filename]:
Vim(Vi[Improved])编辑器是功能强大的跨平台文本文件编辑工具,继承自Unix系统的Vi编辑器,支持Linux/Mac OS X/Windows系统,利用它可以建立、修改文本文件。进入Vim编辑程序,可以在终端输入下面的命令:
$vim [filename]:
其中filename是要编辑器的文件的路径名。如果文件不存在,它将为你建立一个新文件。
2.vim的3中操作模式
Vim编辑程序有三种操作模式,分别称为 编辑模式、插入模式 和 命令模式,当运行Vim时,首先进入编辑模式。
2.1 编辑模式
vim编辑方式的主要用途是在被编辑的文件中移动光标的位置。一旦光标移到到所要的位置,就可以进行剪切和粘贴正文块,删除正文和插入新的正文。当完成所有的编辑工作后,需要保存编辑器结果,退出编辑程序回到终端,可以发出ZZ命令,连续按两次大写的Z键。
上下左右字符移动
命令 | 说明 | 功能 |
---|---|---|
k@H_301_58@ | 上移@H_301_58@ | 移动一行@H_301_58@ |
j@H_301_58@ | 下移@H_301_58@ | 移动一行@H_301_58@ |
h@H_301_58@ | 左移@H_301_58@ | 移动一个字符@H_301_58@ |
l@H_301_58@ | 右移@H_301_58@ | 移动一个字符@H_301_58@ |
行内移动
命令 | 说明 | 功能 |
---|---|---|
w@H_301_58@ | 右移光标到下一个字的开头;@H_301_58@ | @H_301_58@ |
e@H_301_58@ | 右移光标到一个字的末尾;@H_301_58@ | @H_301_58@ |
b@H_301_58@ | 左移光标到前一个字的开头;@H_301_58@ | @H_301_58@ |
0@H_301_58@ | 数字0,左移光标到本行的开始;@H_301_58@ | @H_301_58@ |
$@H_301_58@ | 右移光标,到本行的末尾;@H_301_58@ | @H_301_58@ |
^@H_301_58@ | 移动光标,到本行的第一个非空字符。@H_301_58@ | @H_301_58@ |
整页跳转
命令 | 说明 | 功能 |
---|---|---|
ctrl+f@H_301_58@ | 在文件中前移一页@H_301_58@ | 相当于 page down@H_301_58@ |
ctrl+b @H_301_58@ | 在文件中后移一页@H_301_58@ | 相当于 page up@H_301_58@ |
搜索跳转
命令 | 说明 |
---|---|
*@H_301_58@ | 当光标停留在一个单词上,* 键会在文件内搜索该单词,并跳转到下一处@H_301_58@ |
#@H_301_58@ | 当光标停留在一个单词上,# 在文件内搜索该单词,并跳转到上一处;@H_301_58@ |
3fa@H_301_58@ | 在当前行查找第三个出现的 a。@H_301_58@ |
F/T@H_301_58@ | 和 f 和 t 一样,只不过是相反方向;@H_301_58@ |
t,@H_301_58@ | 到逗号前的第一个字符。逗号可以变成其它字符。@H_301_58@ |
fa@H_301_58@ | 到下一个为 a 的字符处,你也可以fs到下一个为s的字符。@H_301_58@ |
/str1@H_301_58@ | 正向搜索字符串 str1;@H_301_58@ |
n@H_301_58@ | 继续搜索,找出 str1 字符串下次出现的位置;@H_301_58@ |
N@H_301_58@ | 继续搜索,找出 str1 字符串上一次出现的位置@H_301_58@ |
?str2@H_301_58@ | 反向搜索字符串 str2 。@H_301_58@ |
段落间跳转
命令 | 说明 |
---|---|
gg@H_301_58@ | 将光标定位到文件第一行起始位置;@H_301_58@ |
G@H_301_58@ | 将光标定位到文件最后一行起始位置;@H_301_58@ |
(/)@H_301_58@ | 移动到 前/后 句 的开始;@H_301_58@ |
{/}@H_301_58@ | 跳转到 当前/下一个 段落 的开始@H_301_58@ |
g_@H_301_58@ | 到本行最后一个不是 blank 字符的位置。@H_301_58@ |
NG或Ngg@H_301_58@ | 将光标定位到第 N 行的起始位置。@H_301_58@ |
起始,中间,最后一行
命令 | 说明 | 补充 |
---|---|---|
H@H_301_58@ | 将光标移到屏幕上的起始行(或最上行)@H_301_58@ | 2H 表示将光标移到屏幕的第2行@H_301_58@ |
M@H_301_58@ | 将光标移到屏幕中间@H_301_58@ | @H_301_58@ |
L@H_301_58@ | 将光标移到屏幕最后一行@H_301_58@ | 3L 表示将光标移到屏幕的倒数第3行@H_301_58@ |