目录
从进入插入模式开始,直到返回普通模式,vim会记录每一个按键操作。
按键 | 描述 | 按键 | 描述 | ||
h | 左 | l | 右 | ||
j | 下 | k | 上 | ||
$ | 行尾 | 0 / | | 行首 | ||
( | 句首 | ) | 下一句首 | ||
W/w | 下一单词 | b | 上一单词 | ||
E/e | 词尾 | ||||
y | 复制 | ||||
O | 向上插入空行 | o | 向下插入空行 | ||
P | 光标前粘贴 | p | 光标后粘贴 | ||
[[ | 首行 | ]] | 末行 | ||
gg | 首行 | G | 末行 | ||
{ | 段首 | } | 段尾 | ||
X | 删除光标前字符(backspace) | x | 删除光标下字符(delete) | ||
A | 在当前行行尾添加 | a | 光标处添加 | ||
S | 删除行并插入 | s | 删除光标下字符并插入 | ||
b | 跳转到上一个单词的词首 | ||||
c | 修改 | ||||
d | 删除 | D | 删除至行尾 | ||
zz | 将光标所在行移到屏幕中间 | M | 跳转到屏幕中间 | ||
L | 跳转到屏幕最下方 | H | 跳转到屏幕最上方 | ||
ctrl+a | 对数字执行加操作 | ctrl+x | 对数字执行减操作 | ||
ctrl+h | 删除前一个字符(相当于delete) | ctrl+w | 删除前一个单词 | ||
ctrl+= | 使用表达式寄存器,输入算式后按回车 | ||||
ctrl+o | 插入模式下暂时改为操作模式 | ||||
加上数字前缀,可以直接跳转到当前行的第一个数字进行加减操作 | |||||
f{char} | f+任意字符:查找并将光标移动到字符出现位置(向后查找) | ||||
F | 向前查找 | ||||
t | 向后查找并跳到字符前一个位置处 | T | 向前查找并跳到字符前一个位置处 | ||
* | 查找当前光标下的单词(将光标置于所选单词上,输入*后会高亮所有相同单词) | ||||
> | 缩进 | < | 反缩进 | ||
= | 取消所有缩进 | ! | 使用外部程序过滤{motion}所跨越的行 | ||
% | 括号匹配 |
文本对象
- aw:一个词
- as:一句。
- ap:一段。
- ab:一块(包含在圆括号中的)
常用的组合命令
cw:删除从光标位置到单词结尾间的字符,并进入插入模式。
xp:调换前后字符顺序。
daw:delete a word,删除一个单词。 技巧52/53
dap:删除整段
yyp:复制当前行并粘贴
zz:重绘屏幕,把当前行显示在窗口正中,与插入-普通模式结合使用
ctrl+v $ A:在长短不一的高亮块后添加文本
翻页
ctrl+b:向上翻整页(back)
ctrl+u:向上翻半页(up)
ctrl+f:向下翻整页(forward)
ctrl+d:向下翻半页(down)
ctrl+e:向上滚动一行
ctrl+y:向下滚动一行
大小写转换
将光标置于要转换的字母上,输入命令后会发现光标变成一半,再输入新字母即可完成转换。
g~:反转大小写
gu:转换为小写
gU:转换为大写
gUaw:将当前单词转换为大写
gUap:将整段文字转为大写
gUgU/gUU:将整行文字转为大写
列的快操作
1、ctrl + v ,切换到块操作模式。
2、使用j、l等键进行上下左右操作,选中要替换的列。
3、选中之后,按下 c 键,输入要替换的内容。这个时候会看到只有第一行被键入。
4、按下 esc 键,退出块操作模式,这时所有列的字符都会被替换。
列输入
切换到快操作模式选中后按下shift+i,输入完成按esc键退出。
Vim粘贴设置
:set paste 允许粘贴模式(避免粘贴时自动缩进影响格式)
:set nopaste 禁止粘贴模式
寄存器操作
"{register}
不同文件间跳转
gf
ctrl + o
ctrl + ^