不用争论为什么一个比另一个更好,Emacs 和 Vim 之间的实际区别是什么?我想学习一种或另一种,但我意识到每种学习曲线的难度很大,我无法决定。我从来没有使用过这种类型的编辑器(我一直使用过 IDE),所以对新手有帮助的都是一个加号。
在火焰战争开始之前:我不是在问哪个更好,而是在问两者之间的区别。我想要一个客观的比较。
(以下文字是我的观点,不应视为事实或侮辱)
使用 Emacs,您可以将其 24/7 全天候打开并在程序中运行,几乎您可以做的所有事情都可以在此完成。您可以编写自己的扩展名,并将其用于笔记,组织,游戏,编程,shell 访问,文件访问,听音乐,浏览网页。可能需要数周和数周的时间,您才会对此感到满意,然后您将一直学习新知识。当您无权访问它并不断更改您的配置时,您会感到恼火。您将无法轻松使用其他人的 emacs 版本,也不会仅安装它。它使用 Lisp,这很棒。您可以将其变成任何您想要的东西。 (什么都没有)
使用 Vim,几乎总是预先安装了它。它很快。您打开文件进行快速编辑,然后退出。如果您在其他人的计算机上,则可以使用基本设置。它不是那么可编辑,但是仍然比大多数文本编辑器好得多。它可以识别出大部分时间您在阅读 / 编辑时都不会键入内容,从而使该部分的速度更快。您不会遭受emacs 小指的困扰。没那么令人生气。更容易学习。
即使我每天整天都在使用 Emacs(并喜欢它),除非您打算在程序中花费很多时间,否则我会选择 vim
Vim 不是外壳。而且它不能与子流程很好地通信。这几乎是设计使然,而在 Emacs 中,这些元素是设计所包含的。这意味着在 Vim 中很难进行某些事情,例如嵌入调试器或解释器(产生某种 IDE)。
另外,Emacs 快捷方式主要是通过修饰符访问的,显然,Vim 界面是著名的模态,可以访问大量的直接键来进行操作。
Emacs 曾经是两者中唯一可以编程的编辑器,而 Vim 的可编程性有很多怪异的层次,另外还增加了 Python 和 Ruby 绑定(我忘记了更多),但 Vim 在大多数情况下也是可编程的你会照顾的。
我使用 Vim,对此我感到很满意。
Vim:
Emacs:
就我个人而言,我更喜欢 vim - 它很小,可以完成它应该做的事情,当我希望使用完整的 IDE 时,我可以打开 VS。 Emacs 成为想要成为 IDE(或者应该说是 OS)但不完全是 IDE 的编辑器的方法已经过时了。在过去,拥有电子邮件客户端,ftp 客户端,俄罗斯方块,... 在一个软件包(emacs)中没有什么是有意义的... 如今,它不再存在了。
但是,两者都是程序员和超级用户社区用户之间宗教讨论的主题,在这方面,如果接触(使用相同的句子 / 问题),两者都非常适合引发火焰战争。