我是vim重度用户,在这里记录平时自己平时比较喜欢的小技巧

许多命令看去作用很具体,如果你熟悉vim的一般规则(可以参考《Vim实用技巧》),将以下例子视为脚手架,可以百般变化

一个常用的规则是 (number) (command) (text object):number是可选的数值参数,command是c/d/y,text object是一个移动命令

###format gg=Ggg to get the start of the file, = to indent, G to the end of the file

###comment/uncomment 使用插件:Bundle 'scrooloose/nerdcommenter' (k-vim已带)

<leader>c<space> 加上/解开注释, 智能判断

###vim and command * :!open %:mac下打开当前文件,%代表当前文件,open只是command,所以你可以:python %: * :read !ls: read command output(into buffer) * :write !sh:类似于管道,把当前文本传入命令中

###块操作 * di(:删除括号里的内容,'vi('选中括号里的内容,同理就有di'vi]

###移动 * %:跳到与之匹配的括号

###显示 * :set list:显示不可见字符

###剪切板 * reg : 列出剪切板 * "d3yy : 将后续3行拖曳到缓冲区d中("x表示记号) * "dp : 将缓冲区内容放置在光标后

###mark * marks : show marks * ma : 用 a 标记当前的光标位置 * 'a : 调到a位置

###replace * :1,10s/\n//g:将1到10行合并为一行 * :1,10s:\n::g:使用:来分割 * %s/\/\/.*$//g: 去掉所有js注释(//) * $s/\s//g:去掉所有的空格 * 后向引用: * :%s/\(\d\)/[\1]/g:把数字用[]包裹起来