vim快捷键整理
移动
字符移动
k
上移h
左移l
右移j
下移
键盘顺序:h j k l
左 下 上 右
在命令前加上数字可以表示命令执行的次数,比如:5k
,可以上跳5行。
单词移动
w
移动到下一个单词的开头e
移动到下一个单词的结尾b
倒退到上一个单词的开头
同样,在前面加上数字可以表示命令的执行次数,比如:5w
,可以移动5个单词
整行移动
0
(数字0)移动到行首$
移动到行末+
移动到下一行开头-
移动到上一行开头
j
.k
也是移动到上一行和下一行,但他们是移动的光标位置。而+
、-
总是移动到下一行或上一行的行首。
滚屏
ctrl + f
往前滚动一整屏ctrl + b
往后滚动一整屏ctrl + d
往前滚动半屏ctrl + u
往后滚动半屏ctrl + e
往后滚动一行ctrl + y
往前滚动一行
调整光标
z + <enter>
将光标移动到屏幕顶端z + .
将光标所在行移动到屏幕中间z + -
将光标所在行移动到屏幕底端
编辑
插入
字符位置插入
i
在光标之前插入a
在光标之后追加
行位置插入
A
在一行的结尾插入I
在一行的开头插入o
在光标所在位置的下一行打开新行插入O
在光标所在位置的上一行打开新行插入
删除
字符删除
x
删除贯标所在处字符X
删除光标所在前字符
单词删除
d + w
删除到下一个单词开头d + e
删除到下一个单子末尾d + E
删除到本单词的末尾(包含标点在内)d + b
删除到前一个单词d + B
删除到前一个单词(包含标点在内)
行删除
d + d
删除一整行(放到寄存区,可以用p
命令进行粘贴)D + d + $
删除光标位置到行末尾d + 0
删除光标位置到本行开头
修改
字符替换
r
单个字符替换,删除当前光标位置字符,并进入插入模式R
连续替换,~
更改大小写
单词修改
c + w
从光标处修改到单词结尾,并进入插入模式c + a + w
删除当前光标所在的单词c + i + "
i
是匹配,删除当前位置附近,在相同配对"
字符中的内容。删除小括号里面的内容:c + i + (
c + b
从光标处修改到单词开头
行修改
c + $
从光标处修改到本行末尾C
功能同上c + 0
从光标处修改到本行开头c + c
删除整行从头修改S
功能同上s
删除光标所在位置的字符,然后插入
撤销
u
撤销一次操作ctrl + r
恢复上一步被撤销的操作
重做
ctrl + r
重做操作,撤销了不该撤销的,用这个命令来重新恢复。
选择
按v
进入选择模式,可以通过上下左右来选择。
V
选择整行,上下选择的都是整行。
假设有选择很多行的情况,那么可以用组合按键:V
+ 行号 + G
。
比如从当前行选择到第100行:V
+ 100
+ G
。
ps:G
的含义为Goto line[count].
当然可以用:V
+ 100
+ j
。表示往下移动100行,这种就不是行号了,是相对量。