每天离不开的工具vim

从第一次使用vim的手足无措,到如今使用hjkl导航已经形成了肌肉记忆。
在这里记录配置vim的过程,供参考。

入门FAQ

  • ide很强大,轻量级编辑器sublime很好用,还有必要学vim吗?

如果你没有需求,可以不学;有一天你需要了可以再回来看,当然你可以选择现在进入vim的世界。
大多数程序员都会在大量开发机中穿梭,没有gui,这就是vim存在的价值。

  • 怎么学vim?

第一份教程当然是vimtutor,纸上得来终觉浅,只有一个个敲命令,才能体会到vim的快感。

  • 中午乱码怎么办?

中文乱码不只是windows cmd里面的烫烫烫烫,vim的世界同样会遇到,首先给出最简单的方案,把这几行加入配置。
稍稍需要点功夫理解,编码是什么。cpu严重只有0101,它处理的最小长度是字节,8bits,,经常听到的ascii码就是1 byte,最高位是0,其余7位表示不同的符号,可见的字符a-z占一部分。
就最简单的情形,vim可以一个byte一个byte的看,就知道该显示成什么样形状。中文比较复杂,1个byte不能表示,需要特定的编码方法将多个byte表示一个汉子,例如gb2312, gbk, gb18030,还有最通用的utf8。但是它怎么知道文件的编码方式呢,有一些探测编码的方式,但不完全可靠,我们通过设置fecs指定优先级。encode是vim内部使用的。

  • 第一次使用vim 从哪里找配置模版?

http://vim-bootstrap.com 强烈推荐,再也不需要手动处理中文乱码这些问题,真正做到开箱即用。

插件

  • 插件管理
    https://github.com/junegunn/vim-plug

  • c++ 补全
    https://github.com/ycm-core/ycmd 安装略烦琐,使用体验上当然比不上visual studio之类做语法分析的补全效果,不全效果类似sumblime,可以自动补全已经输入变量名、函数名,对编码效率、正确率提升明显

  • fzf 快速查找

  • A
    c++ 头文件源文件快速切换

原文地址:https://www.cnblogs.com/lessmore/p/vim.html