背景
最近的工作需要vim中编辑,然鹅很久没用发现快忘完了。于是赶紧复习一下(记录)~
光标移动
ctrl+e:页面向下移动
ctrl+u:上翻半页
ctrl+f:上翻一页
ctrl+d:下翻半页
ctrl+b:下翻一页
0(数字):跳至光标所在行行首
end/$:跳至行尾
gg:跳至文首(= 1G)
G:跳至文尾
nG:光标移动到第n行
n+Enter:光标向下移动n行
H:光标移到屏幕靠上位置
M:光标移到屏幕中间
L:光标移到屏幕靠下位置
查询
*:查找光标所在处的单词,向下查找
#:查找光标所在处的单词,向上查找
/word:向下查找字符串word
?word:向上寻找字符串word
n(按键):重复前一个搜索指令
N(按键):反向重复前一个搜索指令
替换
n1,n2s/word1/word2/g:在第n1行到n2行之间,将word1替换为word2
%s/word1/word2/gc:在第1行到最后一行之间,将word1替换为word2,每次替换前给用户确认
删除
x,X:x 向后删除一个字符, X 向前删除一个字符
nx:向后删除n个字符
dd:剪切一行
ndd:向下剪切n行
d1G:删除光标到第一行的内容
dG:删除光标到最后一行的内容
复制
yy:复制行
nyy:向下复制n行
y1G:复制光标到第一行的内容
yG:复制光标到最后一行的内容
粘贴
p,P:p 在光标的下方粘贴复制的内容, P 在光标的上方粘贴复制的内容
撤销、重复
u:恢复前一个操作
. (按键):重复前一个操作
编辑
i:从光标位置输入
a,A:a 从光标所在的下个字符输入,A 从光标所在行的行尾输入
o,O:o 光标的下一行插入,O 光标的上一行插入
r,R:r 覆盖光标出的字符一次,R 覆盖光标往后的字符(连续)
常用:i、A、o、O、r、R
保存、退出
w:保存编辑的内容
w!:强制保存
q:退出
q!:强制退出
wq:保存后退出
w filename:文件另存为filename
n1 n2 w filename:将n1到n2的内容存为filename文件
! cmd:在vim中执行shell的cmd指令,如:! ls
设置编辑环境
set nu:显示行号
set nonu:不显示行号
参考
https://www.runoob.com/linux/linux-vim.html