更强
知道怎么有效的移动对vim是非常重要的。请不要跳过这一节。
1. NG→定位到第N行
2. gg→1G的快捷方式——定位到第一行
3. G→定位到最后一行
4. 单词移动:
1. w→定位到当前单词的开始位置,
2. e→ 定位到当前单词的最后位置. 默认情况下, 单词有字符和下划线组成. 我们称一句话是由一组被空格符号分隔的单词组成. 如果你想定位一句话,那么就用大写字符:
1. W→ 定位到当前句子的开始位置,
2. E→ 定位到当前这句话的最后位置.
现在让我们来谈谈几个非常有效率的移动:
%: Go to the corresponding(,{,[.
• *(resp.#) : go to next (resp. previous) occurrence of the word under the cursor
相信我,最后的三行命令是精华。
更快
记住了vi移动的重要性?这里就是原因。大多数命令使用下面这种通用格式:
<开始位置><命令><结束位置>
例如: 0y$意味着
- 0→ 跳到本行开头
- y→ 从这里开始复制
- $→ 直到本行结束
我们也可以使用ye,从当前位置复制到单词的末尾。但是y2/foo 会一直复制到第二个foo出现的地方。
但对于y(复制), d(删除), v(visual 选择), gU(大写), gu(小写)等等命令都是真实的。
第四层次 – Vim 超能量
使用上述的命令,你就觉得很爽了。但是现在,这里才是杀手锏。正因为其中有些特性,我才使用vim的。
在当前行移动:0^$g_fFtT,;
- 0→ 跳到第一列
- ^→ 跳到当前行的第一个字符
- $→ 跳到最后一列
- g_→ 跳到这行的最后一个字符
- fa→ 跳到这行a字母的下一个出现的地方。(对比 ; )会查找下一个(上一个)地方
- t,→ 跳到,字符的前一个字符.
- 3fa→ 在这行中查找a出现的第三个位置.
- F 和 T→ 与f和t相似, 但是方向相反.
一个有用的提示:dt"→删除所有的直到”。