VIM实用技术总结
2021-06-29 本文已影响0人
闪电侠悟空
vim主要是编辑文字。所以按照文档编辑修改的思路来整理,算是自己学习的简记。
输入文字
输入文字是很简单的工作,主要是删除和复制操作。
<ctrl+w>: 删除单词
<ctrl+u>:删除这一行
<ctrl+r>: 复制寄存器
修改文字
修改文字是主要的工作,其中“动作+对象”的方式是基本操作:
c+w:矫正当前单词
dd: 删除该行
... 不一一列举。
另外,就是替换操作,这个是我使用最多的技术。
:[range]s/pattern/new_string/flag
- range: %,该文件的所有范围
- range: 可以用可视模式选择。
- flag: [g] globla, 一行的所有匹配项均替换
- flag: [c] check, 操作之前确认下;
- flag: [n] number,不进行替换操作,但是报告有多少匹配项。
注意:这里使用了pattern,也就是说可以和搜索命令结合
\old_string
:%s//new_string/g
第一个斜杠就表示使用默认的查找模式pattern
行操作
上述讲了word level的操作,也将了基于查找的string的替换。但是对于行的操作也是有必要的。当然可以用<S+v>
用可视模式选中行“对象”,然后执行“操作”,这有个缺点就是,只能选中连续行。
:g/pattern/op
这样就可以选中pattern匹配的行进行操作,不管是d还是t还是m。
:v/pattern/op,取反向行
grep操作
grep: Globally search for a Regular Expression and Print, 这个缩写也是够精简的。这是一个跨文件查找的操作。
总结
《vim实用技巧》这本书也看完了。VIM就是一个面向对象的编辑器,支持快速的文字编辑工作,在使用中逐渐熟练。VIM面向的对象可以是字符,单词,行,文本。操作上的组合按键主要是提高文字的搬运效率。
- 还有很多别的包,其基本思路都是针对特定的任务进行定制。比如ctag,比如括号之间的跳转。这些对我而言都是可有可无的东西。
- 更多的细节。