vim编辑常用命令

Liang / 2018-11-29


一、插入文本 #

常用的,当然是i,但是如果只用i,那就太土鳖了,记住i、o、a即可, 当然大小写,一般区分前后的概念,这个是vim在设计各类指令的原则。

命令执行的操作
i在光标的左侧插入字符
I在行首插入字符
a在光标的右侧添加文本
A在行尾添加文本
o在当前行下面插入一空行
O在当前行上面插入一空行

下面还有几个常用的设置:

命令执行的操作
:set showmode当vi处在输入模式下时显示提示信息
:set sm即时显示配对的)或}
:set ts=n把制表符设置为n(默认为8)
:set ai下一行从前一行的缩进位置开始(这个在写代码时比较有用)

二. 查找 #

命令执行的操作
/xxx(?xxx)表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示向上查找.
*(#)当光标停留在某个单词上时,输入这条命令表示查找与该单词匹配的下(上)一个单词. 同样, 再输入 n 查找下一个匹配处, 输入 N 反方向查找.

三. 移动光标 #

命令执行的操作
w(e)移动光标到下一个单词.
b移动光标到上一个单词.
0移动光标到本行最开头.
^移动光标到本行最开头的字符处.
$移动光标到本行结尾处.
H移动光标到屏幕的首行.
M移动光标到屏幕的中间一行.
L移动光标到屏幕的尾行.
gg移动光标到文档首行.
G移动光标到文档尾行.
c-f(即 ctrl 键与 f 键一同按下) 本命令即 page down.
c-b(即 ctrl 键与 b 键一同按下, 后同) 本命令即 page up.

四、删除文本 #

命令执行的操作
x删除光标所在的字符
6x删除光标位置的字符以及右侧的5个字符
X删除前一个字符
dd删除当前行
4dd删除4行
64dd删除64行
dw删除一个单词
d0删除到行首
d$删除到行尾
d删除一个区域(只用于vim)

五、替换文本 #

命令执行的操作
rch把光标位置的字符替换为ch
R替换光标右边的文本
s把光标所在的字符替换为任意个字符
S替换整行内容
cw修改一个单词
c修改区域里的文本(vim)
~改变所扫描的或区域里的字母的大小写
!tr’[a-z]’’[A-Z]'把区域里的字母转换为大写(vim)
!tr’[A-Z]’’[a-z]'把区域里的字母转换为小写(vim)

六、复制粘贴文本 #

命令执行的操作
yy复制当前行
6yy复制六行
yw复制单词
y复制区域(vim)
p把复制的文本粘贴到右边或下面
P把复制的文本粘贴到左边或上面
“ayy把当前行复制到缓冲区a里
“ap恢复缓冲区a里的内容

最后一次修改于 2018-11-29