Vim笔记:技巧1 - 技巧5
1、简要说明
1、占位符
| 标记 | 含义 |
|---|
| f{char} | 按 f,后面跟任意字符 | | `{a-z} | 按`,后面跟任意小写字母 | | m{a-zA-Z} | 按 m,后面跟任意小写或大写字母 | | d{motion} | 按 d,后面跟任意动作命令 | | {register} | 同时按 和 r,后面跟一个寄存器地址 |
2、特殊键对照表
| 标记 | 含义 |
|---|
| <Esc> | 按退出键 | | <CR> | 按回车键,也写作 | | <Ctrl> | 按控制键 | | <Tab> | 按制表键 | | <Shift> | 按切换键 | | <S-Tab> | 同时按 和 | | <Up> | 按上光标键 | | <Down> | 按下光标键 | | ? | 按空格键 |
ps:空格由?表示。它和 f{char} 命令组合在一起时记为 f?。
普通模式:cwreplacement<Esc> 删除从光标位置到当前词结尾处的文本,并切换到插入模式。然后我们在插入模式中输入单词“replacement”,并按 键再切换回普通模式。
3、命令行操作
| 标记 | 含义 |
|---|
| $ | 在外部 shell 中执行命令行命令 | | : | 用命令行模式执行一条 Ex 命令 | | / | 用命令行模式执行正向查找 | | ? | 用命令行模式执行反向查找 | | = | 用命令行模式对一个 Vim 脚本表达式求值 |
2、Vim解决问题的方式
技巧1 结识 . 命令
. 命令可以让我们重复上次的修改,它是 Vim 中最为强大的多面手。 |
|---|
x命令会删除光标下的字符。 |

dd 命令也做删除操作,但它会把整行一起删掉。 |
|---|
\>G 命令会增加从当前行到文档末尾处的缩进层级。 |

ps:x、dd 以及 > 命令都是在普通模式中执行的命令,不过,每次我们进入插入模式时,也会形成一次修改。从进入插入模式的那一刻起(例如,输入 i),直到返回普通模式时为止(输入<Esc>),Vim 会记录每一个按键操作。做出这样一个修改后再用 . 命令的话,它将会重新执行所有这些按键操作。
.命令是一个微型的宏。 |
|---|
| Vim 可以录制任意数目的按键操作,然后在以后重复执行它们。 | 我们可以把 . 命令当成一个很小的宏(macro)。 |
技巧 2 不要自我重复
$ 命令可以完成移动到结尾的动作。 |
|---|
a;<Esc>在光标之后进入输入模式并加入内容,写入;在退回到普通模式。 | A命令在当前行的结尾添加内容。 |
| 复合命令 | 等效的长命令 |
|---|
| C | c$ | | s | cl | | S | ^c | | I | ^i | | A | $a | | o | A | | O | ko |
技巧 3 以退为进
s命令把两个操作合并为一个:它先删除光标下的字符,然后进入插入模式。在删除 + 号后,我们先输入?+?,然后退出插入模式。 |
|---|
f{char} 命令让 Vim 查找下一处指定字符出现的位置,如果找到了,就直接把光标移到那里。 | ;命令会重复查找上次 f 命令所查找的字符。 |
技巧 4 执行、重复、回退
在面对重复性工作时,我们需要让移动动作和修改都能够重复,这样就可以达到一个最佳编辑模式。
@: 可以用来重复任意 Ex 命令。 |
|---|
我们也可以输入 & 来重复上次的:substitute命令。 | 对 . 命令而言,我们永远可以按 u 键撤销上次的修改。 | 在使用f{char} 命令后,不小心按了太多次 ; 键,就会偏离我们的目标。不过我们可以再按 , 键跳回去,这个命令会反方向查找上次 f{char}所查找的字符。 |
| 目的 | 操作 | 重复 | 回退 |
|---|
| 做出一个修改 | {edit} | . | u | | 在行内查找下一指定字符 | f{char}/t{char} | ; | , | | 在行内查找上一指定字符 | F{char}/T{char} | ; | , | | 在文档中查找下一处匹配项 | /pattern | n | N | | 在文档中查找上一处匹配项 | ?pattern | n | N | | 执行替换 | : s/target/replacement | & | u | | 执行一系列修改 | qx{changes}q | @x | u |
技巧 5 查找并手动替换
Vim 提供了一个:substitute 命令专门用于查找替换任务。
* 命令可以查找当前光标下的单词。会产生两个结果:一是光标会跳到下一个匹配项上,二是所有出现这个词的地方都会被高亮显示出来。 |
|---|
*nn 会遍历完所有的匹配项,从而跳回到本次查找的起点。 | cw 命令会删除从光标位置到单词结尾间的字符,并进入插入模式。 |
技巧 6 结识 . 范式
用一键移动,另一键执行
|