vim技巧总结

已经有两年时间没折腾过vim的插件了. 最近打算尝试一下neovim, 借着这个机会检索了一下当前流行的vim插件, 发现自己落伍了不少. 而且又学习到很多新的vim知识. 打算总结一下, 主要是方便自己记忆.

帮助撰写代码

编辑器的本职工作就是让用户可以编辑文档, 这里记录vim是怎么帮助用户编辑代码的.

vim基本特色 -- 光标移动

Vim为光标移提供了一套复杂但极有效率的系统, 这套系统也是Vim区别于其他编辑器的最显著特征. Vim的其他很多功能也都依赖于这套系统. 但成也萧何败也萧何, 这套系统也是Vim劝退很多初学者的一个难点.

vim光标移动

帮助阅读代码

代码编辑器最重要的功能之一就是能够帮助用户阅读别人写的代码.

静态符号索引 -- 标签(tags)系统

由于ctags匹配率比较低, 所以我之前基本放弃使用ctags了. 但刷新知识之后发现这还是个宝藏.

vim标签系统

异步模糊检索

vim的异步模糊检索插件使vim超出各种IDE的一个段位. 一旦快捷键形成肌肉记忆, 在代码中跳转时快得飞起. 我常用的有两个, 一般来说LeaderF是主力, fzf安装了备用.

leaderf

vim plugin介绍之LeaderF

fzf

TBD

easymotion

TBD

signature

TBD

减少写代码的出错机会

TBD

自动补全

TBD

参数提示

TBD

动态检查

TBD

增加apm的插件

TBD

surround

TBD

easy-align

TBD

expand-region

TBD

matchup

TBD

代码注释和反注释

TBD

vim的自我管理

调试vim

  1. vim 监控文件是否在vim外部被修改的机制