fireholder.github.io

伪文艺女青年,状高冷,话少爱热闹


Blog | Archive | About

Vim 使用技巧备忘录

18 Dec 2016 | 软件

关于Vim的使用技巧网上有一大堆,然而在下记性不好。网上的教程太杂,毕竟不是为自己量身打造真正需要的,再者,每次临时搜索太耗时间。最近在看《Vim实用技巧》,此处笔记只是为了备忘。

PART 1:一些提高效率的小命令

1. .

别看错,就是”.”,这是重复上次修改。

2. *

查找当前光标下的单词,查找命令可以配合 n 使用,可以跳到下一个匹配项。

3. 删除

cw 删除从光标处到单词结尾处的单词。db 反向删除从光标起始位置到单词开头的内容。dw 删除一个单词。x 删除当前字符。dap 删除一个段落。

在插入模式下可以用组合键 <C-w> 删除前一个单词,用<C-u> 删除到行首。(这在shell中也适用)

4.gUaw

把当前单词转换成大写,同理,把w换成p就是当前段落。u 就是小写。

5. zz

重绘屏幕,并把当前行显示在屏幕正中。

6. 计算器功能

在插入模式下输入 <C-r>= ,再输入要运算的表达式,按回车即可把结果插入到当前位置。注意运算符应为英文模式下的运算符。另外 ga 命令可以查看当前字符的十进制和十六进制字符编码。

7. f{char}

f 后紧跟一个字符可以查找该字符并跳转。

8. 可视模式

输入 v 可进入可视模式。<C-v> 激活面向列块的可视模式。用 o 来重新调整选区边界。可以用来配合 > 进行批量缩进。

9. r

用 r{char} 可替换字符。

10. 命令行模式

11. 切割窗口

<C-w>s水平切割, <C-w>v 垂直切割。

12. 标签页

:tabedit{filename} 打开新的标签页。{N}gt切换到编号为N的标签页,gt切换到上一个标签页,gT是下一个。:ls 可以查看当前缓存。:tabclose 当前标签页。

13. 跳转

14. 查找

15. 替换

:%s/old/new/gc 把old都替换为new,但是每次都会询问一遍。

PART 2:神奇插件在哪里

1. YouCompleteMe

顾名思义,这是一个自动补全插件,安装比较麻烦,需要自己编译,配置过程也极其折腾,然而很好用。

Vim自带的补全可以在插入模式下输入<C-p>或<C-n>触发。 <C-x><C-l><Esc>可以补全整行文本。

2. 拼写检查器

:set spell 即可高亮错误拼写,用 [s 和 ]s 前后跳转,当光标在拼错单词上时可以用 z= 来获得更正建议。

3. MRU

<C-p> 触发,可打开最近编辑的文件。

参考文献:[1] Drew Neil. Vim实用技巧[M]. 北京:人民邮电大学, 2014.

comments powered by Disqus

Older · View Archive (56)

自动生成MakeFile

linux党想必都见过MakeFile,在我们安装软件的时候,有时候只要解压缩 tar.gz 文件,执行 ./configure ,再执行 make ,make install即可安装软件。那么MakeFile到底是个什么东西,实际上是把我们的编译命令都写在了一个文件里。一般我们写个几十行小代码的时候不这么干,而是直接用命令,因为这样很烦…今天看 《Vim 实用技巧》时看到一个 quickfix 工具,可以直接在 Vim 中编译代码。我心花还没怒放,就看到后面跟着在 Vim 中输入 :make 。然而这是要有前提条件你的工程文件夹里包含了MakeFile。于是我心头一动,写MakeFile好麻烦,有没有什么自动生成的工具呢。事实证明懒惰促进人类进步,这种东西怎么可能没有,于是我就花了一个晚上,整通了比写MakeFile更麻烦的自动生成MakeFile…

Newer

JavaScript NOTE 1

关于匿名函数和IIFE