Emacs和Vim之间的差异

没有深入探讨为什么一个人比另一个人更好的宗教争论,Emacs和Vim之间的实际区别是什么? 我正在寻找一个或另一个,但我意识到每个人的学习曲线很高,我不能决定。 我从来没有使用这种类型的编辑器(我一直使用IDE),所以任何有助于新手的东西都是一个优点。


在火焰战争开始之前:我不是在问哪个更好,我是问两者之间的差异。 我想要一个客观的比较。


(以下文字是我的意见,不应视为事实或侮辱)

借助Emacs,您可以全天候开放,并且可以在程序中生活,几乎所有的事情都可以从那里完成。 您可以编写自己的扩展名,将其用于笔记记录,组织,游戏,编程,外壳访问,文件访问,收听音乐和浏览网页。 这需要花费数周甚至数周时间,直到你满意为止,然后你会一直学习新的东西。 当你无法访问它并不断改变你的配置时,你会感到恼火。 您将无法轻松使用其他人的emacs版本,并且不会仅仅安装它。 它使用Lisp,这非常棒。 你可以把它变成任何你想要的东西。 (任何东西)

对于Vim,它几乎总是预先安装的。 它很快。 你打开一个文件做一个快速编辑,然后退出。 如果你在别人的机器上,你可以使用基本设置。 它不太可编辑,但仍然比大多数文本编辑器好得多。 它认识到大部分时间你正在阅读/编辑而不是打字,并且使得这部分更快。 你不会从emacs小指挨打。 它并没有那么令人生气。 学习起来更容易。

即使我每天都在使用Emacs(并且喜欢它),除非您打算在您选择的程序中花费大量时间,我会选择vim


Vim不是一个shell。 它不能很好地与子流程进行交流。 这几乎是通过设计来实现的,而在Emacs中,这些元素被包含在设计中。 这意味着一些东西,比如嵌入调试器或解释器(产生一种IDE),在Vim中很难。

另外,Emacs的快捷键主要是通过修饰符来访问的,显然Vim界面是着名的模式,可以访问荒谬的直接键进行操作。

Emacs曾经是这两种编程中唯一可编程的编辑器,虽然Vim在可编程性方面有很多奇怪的级别,但增加了Python和Ruby绑定(以及更多,我忘记了),Vim在大多数方面也是可编程的你会在意。

我使用Vim,对此我感到非常满意。


Vim的:

  • 作为一个简单的编辑器更好(简单任务所需的键较少)
  • 更活跃的脚本社区 - 内部语言:vimscript
  • 一个脚本,插件,配色方案的中央存储库......
  • 也可以在python,ruby中扩展
  • 可以做成便携式(emacs有一些问题)
  • Emacs的:

  • 非默认模式(今天大多数编辑采用了这种方法)。 虽然有模仿vim行为的邪恶模式。
  • 更强大的语言来扩展它(elisp是一种全面的语言,在emacs中你可以重新定义所有的东西;而在vim中,你不能重新定义编辑器功能的构建。几乎不像任何东西)
  • 更可扩展
  • 对GNU工具(其中一大堆)的优秀支持
  • 就个人而言,我更喜欢vim--它很小,做它应该做的事情,当我希望一个完整的IDE时,我打开VS. 恕我直言,Emacs成为一名希望成为IDE(或者我应该说,操作系统)的编辑人员的做法是,恕我直言,过时了。 在过去有一个电子邮件客户端,FTP客户端,俄罗斯方块,...在一个包(Emacs)没有什么意义...现在,它现在不再。

    然而,这两者都是程序员和超级用户社区用户之间进行宗教讨论的话题,并且在这方面,如果联系起来(在同一句话/问题中),这两者都非常适合启动火焰战争。

    链接地址: http://www.djcxy.com/p/25919.html

    上一篇: Differences between Emacs and Vim

    下一篇: modal WPF dialog hosted in a Win32 app doesn't receive keyboard events