一个软件要想推广, 一定是先要给新用户足够的便利, 解决了用户的需求, 之后, 用户才会为看见他的潜力感到欣喜, 从而爱上它的将来, 但是 vim 和 emacs 不是这么做的, 他们首先要求用户学习区别于 GUI 的 TUI 操作模式, 就算学会了, 也仅仅是一个 基于 TUI 的 notepad++, 在被配置 vim 或者 emacs 虐上最少 10 个小时后, 才能把它配置成一个具备简单补全功能的代码编辑器, 在之后的插件探索道路上, 如果碰到插件之间的兼容问题, 还要考虑自己debug. 简单的总结下来, 就是: vim 是一个对新手不友好的工具.
要想让 vim 友好, 必须要根据使用的人群, 设计专用的工具, 这个工具可能不够强大, 但是可以基于 vim 的潜力, 让用户自己扩展, 你可以理解为, 基于 vim 的 Pycharm
比如, 同样是一个 Python 程序员, 想要使用 vim 开发, 至少要有以下几个功能
1. 代码高亮
2. 代码定义跳转
3. 代码补全
4. debug
如果vim想要吸引 Python 用户, 就应当先把这个功能定制出来, 这样的配置, 或许没有对于常用的html/css/js补全, 但是, 这里所缺少的, 不是 Python 程序员所必要的, 之后的, 就交给程序员自己去配置, 这是非常合适的,
vim的配置, 都是基于 vimrc 的, 但是 vim 的命令行模式的 source 命令, 是可以切换 vimrc 的, 基于这一个特性, 对于多技术栈的用户, 也不是什么难点.
另外, 在配置现在的 vim 的过程中, 我们完全可以给使用这提供一个打包好的开发环境, 而不是要让他们在下载插件的过程中被网速惹毛.
归根结底, vim 和 emacs 为高端用户提供了非常高的自由度, 但是对于新手, 只能在受虐中成长, 这两个软件, 都是基于开源社区的运作模式在生长, 而不是基于商业模式的在运作, 这也就是他们还没有占领市场的原因了.
来源:https://www.cnblogs.com/imkow/p/12329486.html