Vim文档编辑
本篇知识点
- Vim重复命令
- 游标的快速切换
- 复制粘贴和剪切
1. Vim重复命令
在普通模式下.(小数点)表示重复上一次的命令操作
- 普通模式下输入x,删除第一个字符,输入.(小数点)会再次删除一个字符,除此之外也可以重复dd的删除操作
- 当然你也可以输入10x,删除10个连续字符
- 输入3dd,将会删除3行文本
在普通模式下,你还可以使用dw或者daw(delete a word)删除一个单词,所以你可以很容易的联想到dnw(n替换为相应数字) 表示删除n个单词
2. 游标的移动
2.1 行间跳转:
命令 | 说明 |
---|---|
nG(n Shift+g) | 游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入:set nu以显示行号) |
gg | 游标移动到到第一行 |
G(Shift+g) | 到最后一行 |
小技巧:你在完成依次跳转后,可以使用 Ctrl+o 快速回到上一次(跳转前)光标所在位置,这个技巧很实用, 比如当你在写代码时,忽然想起有个 bug,需要修改,这时候你跳过去改好了,只需要按下 Ctrl+o 就可以回到你之前的位置。vim 中会用很多类似的小技巧就等着你去发掘。
2.2行内跳转:
命令 | 说明 |
---|---|
w | 到下一个单词的开头 |
e | 到当前单词的结尾 |
b | 到前一个单词的开头 |
ge | 到前一个单词的结尾 |
0或^ | 到行头 |
$ | 到行尾 |
f<字母> | 向后搜索<字母>并跳转到第一个匹配的位置(非常实用) |
F<字母> | 向前搜索<字母>并跳转到第一个匹配的位置 |
t<字母> | 向后搜索<字母>并跳转到第一个匹配位置之前的一个字母(不常用) |
T<字母> | 向前搜索<字母>并跳转到第一个匹配位置之后的一个字母(不常用) |
3. 复制粘贴和剪切
3.1 复制及粘贴文本
- 普通模式中使用y复制
- 普通模式中,yy复制游标所在的整行(3yy表示复制3行)
- 普通模式中,y^ 复制至行首,或y0。不含光标所在处字符。
- 普通模式中,y$ 复制至行尾。含光标所在处字符。
- 普通模式中,yw 复制一个单词。
- 普通模式中,y2w 复制两个单词。
- 普通模式中,yG 复制至文本末。
- 普通模式中,y1G 复制至文本开头。
- 普通模式中使用 p 粘贴
- 普通模式中,p(小写)代表粘贴至光标后(下)
- 普通模式中,P(大写)代表粘贴至光标前(上)
3.2 剪切及粘贴
其实前面讲得 dd 删除命令就是剪切,你每次 dd 删除文档内容后,便可以使用 p 来粘贴,也这一点可以让我们实现一个很爽快的功能——交换上下行: ddp ,就这么简单,即实现了快速交换光标所在行与它下面的行.