捐赠:支付宝 yangyangwithgnu@ 上搜索 vim ide 关键字后第一匹配项便是本文,洋人浏览到本文的次数非常多,常常收到要求同步发表英文版的邮件,但是,你知道,这 80+ 页的中文已经耗费我大量业余时间,所以,如果可能,希望有精力的朋友可以将其翻译为英文,感谢!
-
讨论:任何意见建议移步
-
译:yangyangwithgnu@ 有丰富的插件资源,任何你想得到的功能,如果 vim 无法直接支持,那一般都有对应的插件为你服务,有需求时可以去逛逛。clang + 后端 LLVM(后简称 LLVM/clang)就是一款可替代 GCC 的优秀编译器。相较 GCC,LLVM/clang 有众多优势,尤其以下几点: 错误信息可读性强。能指出哪行、哪列有错误,并且用波浪线突显出来;另外,尽可能给出修改建议(比如提示你是否拼写错误);最重要的是对 C++ 模板相关语法错误提示非常友好;(注,GCC 与我同在。发布在
嗷呼,经过以上调教,你的 vim 已经成为非常舒适的 C/C++ 开发环境呢。等等,重装系统后又得折腾一次?不怕,除了 clang 等等几个需要源码安装的工具外,基本上,vim 的插件和相关配置文件你可以提前备份好,装完系统后恢复到对应目录中即可,丝毫不费脑力。
2011 年 9 月我写了篇《拼装的艺术:vim 之 IDE 进化实录》,原计划近期(2014-09)更新下智能补全部分,后来越改越发觉原版问题太多,加之各插件推陈出新、自己对 vim 的认识加深,索性完全重新。期间,与很多朋友有过交流,有三类问题探讨得最频繁,我的观点简要阐述如下,后续不再欢迎、理会、回复相关问题:
- 为何不用 Code::Blocks 这类一站式 IDE?每个人的做事的出发点、性格观念千差万别,我不想拿 linux kernel 是 linus torvalds 用 microemacs(emacs 变种)开发的来说事儿,就我而言,迷恋 vim 的高效编辑能力、无限扩充能力,这是其他编辑器无法超越的。此外,我享受的是过程,不是结果!
- 哪个是最适合编码的编辑器?linux 上存在两种编辑器:神之编辑器 emacs,编辑器之神 vim。关于 emacs 与 vim 孰轻谁重之争已是世纪话题,我无意参与其中,在我眼里,它们流淌着自由的血液、继承着创新的基因,作为顶级编辑器,二者在这个领域都作到了极致,让世人重新认识了编辑的本质 —— 用命令规则而非字字键入 —— 去完成编辑任务。emacs,伪装成编辑器的操作系统,太杂、太重,我更喜欢专注于编辑的 vim。
- 怎样的 IDE 才算好?对于初入开发的人员而言,Code::Blocks 是最易上手的选择;对于我这类喜欢折腾、追求效率、愿意用脑力换体力的人来说,vim 搭配各类插件是好的 IDE;对于 Donald Knuth 这等宗师,他们站在整个系统的层面,bash 加上几个命令行工具也是某种意义上的 IDE。所以,只要你能得心应手地完成软件开发任务,又察觉不到工具的存在,那这就是最适合你的 IDE。
末了,写作的过程,是知识体系完整重构的过程,理清了思路、加深了记忆。如果它再能引发你的一点思绪,或许,这就是价值!