一些常用的额外的小技巧
删除
x | 向后伤处一个字符 |
#x | 向后删除#个字符 |
X | 向前删除一个字符 |
#X | 向前删除#个字符 |
dd | 删除整行 |
#dd | 从光标开始删除#行 |
#dd | 从光标开始删除#行 |
复制
yw | 光标至字尾存到缓冲区 |
#yw | 复制#个字到缓冲区 |
yy | 复制所在行到缓冲区 |
#yy | 复制光标往下#行到缓冲区 |
p | 粘贴 |
恢复
u | 恢复上一次操作 |
查找
/关键字 | 往后查找,n继续 |
?关键字 | 往前查找,n继续 |
跳行
# | #5调到第5行(低行模式) |
# | #5跳到该行第5个位置 |
#G | 15G调到第15行行首 |
查找+替换
: s/old/new | 替换该行第一个old 为new |
: s/old/new/g | 替换全行的old为new |
:#,#s/old/new/g | 替换两行枝节的old为new |
:%s/old/new/g | 替换全文的old 为new |
:%s/old/new/gc | 全文替换前需确认 |
配对括号查找
% | 在括号上按%,光标跳转到配对上 |
调用外部命令
:!ls | 调用外部命令 |
选择性保存
#,#w | #行到#行保存 |
提取,合并文件
:r anotherfile | 将anotherfile文件提取到当前 |
多文件操作
:n filename | 编辑另一个文件 |
:N filename | 编辑上一个文件 |
:files | 列举打开的所有文件 |
多窗口操作
:sp [filename] | |
ctrl-w-j | 移到下一个窗口 |
ctrl-w-k | 移到上一个窗口 |
ctrl-w-q | 退出当前窗口 |