❧ Vim实用技巧
- 在10行和112行之间插入4空格
:10,112 s/^/ /- 在10行和112行之间后退4空格
:10,112 s/^ /- 插入注释
:起始行号,结束行号s/^/注释符/- 去注释
:起始行号,结束行号s/^注释符/命令操作
| 命令 | 目的 |
|---|---|
x | 删除光标下的字符 |
u | 撤销修改 |
d | 删除行,dd 删除一行,d{n}d 删除n行 |
>G | 增加从当前行到文档末尾处的缩进层级 |
j | 使光标下移一行 |
$ | 把光标移到行尾 |
a | 在当前光标之后添加内容 |
A 等价 $a | 在当前行的结尾添加内容 |
cw | 删除从光标位置到单词结尾间的字符 |
| 操作 | 目的 | 重复 | 回退 |
|---|---|---|---|
| {edit} | 做出一个修改 | ; | , |
f{char}或t{char} | 在行内查找下一个指定字符 | ; | , |
F{char}或T{char} | 在行内查找上一个指定字符 | ; | , |
/pattern<CR> | 在文档中查找下一处匹配项 | n | N |
?pattern<CR> | 在文档中查找上一处匹配项 | n | N |
* | 查找当前光标下的单词(高亮显示所有当前单词:set hls) | n | N |
:s/target/replacement | 执行替换 | & | u |
qx{changes}q | 执行一系列修改 | @x | u |
技巧1:. 命令
. 命令可以让我们重复上次的修改
技巧2:查找并手动替换
:首行数,末行数s/要替换的字符串/替换的字符串/g (s前面加上’%‘可以实现全文范围内替换)
技巧3:把撤销单元切成块
- 控制好对<Esc>键的使用,可使撤销命令作用于单词、句子或段落;
- 换行可以使用<Esc>o代替<CR>
- 在插入模式中移动光标会重置修改状态
- 当准备好继续写时,按A命令就可以回到原来的地方继续写作;