Elvis 与 Vim 有什么不同?

Elvis 与 Vim 有什么不同?

我已经使用 Slackware 一段时间了,它附带了埃尔维斯作为其默认编辑器。

大多数其他 Linux 发行版似乎都附带了维姆,而不是埃尔维斯。已经习惯了 Elvis,当我转向使用 vim 的发行版时,我会面临学习曲线吗?

Elvis 与 Vim 相比有哪些优点和缺点?

答案1

埃尔维斯维姆两者都是功能强大的vi克隆,因此在它们之间切换时,您的手指记忆将非常适合您。

他们共享许多vi扩展:

  • 语法高亮

  • 多次撤消和重做

  • 视觉模式,通过vV

  • 命令历史记录和完成情况

  • 标签堆栈(例如:tags:tn等)

  • 多窗口编辑,通过:splitCtrl-W

  • 扩展正则表达式:交替、子表达式分组等。

  • GUI版本,除了传统的全屏终端UI

  • 远程文件编辑:通过 FTP 读/写,通过 HTTP 只读

  • 删除大多数经典vi限制,例如行长度和文件大小

  • 改进的编程支持::make自动跳转到编译器错误等。

尽管 Elvis 与普通 Unix 相比令人印象深刻vi,但 Vim 的能力甚至更强:

  • Vim脚本是很多更加强大比 Elvisex派生的脚本语言。

    (Elvis 和 Vimex以不兼容的方向扩展了语言。这意味着您无法轻松地将elvis.ini文件移植到,~/.vimrc除非它只是简单命令的列表ex。)

  • 除了 Vimscript 之外,Vim 还可以通过 Lua、Perl、Python、Racket、Ruby 和 Tcl 编写脚本。

    (但是,您本地的 Vim 可能没有启用所有这些功能。)

  • Vim 脚本存档包含数千Vim 脚本,添加非常有用功能、辅助应用程序、游戏, 和更多。

    Elvis 只附带了几十个脚本。好像没有任何第三方 Elvis 脚本的档案。 (我尝试谷歌搜索,只找到了脚本埃尔维斯·普雷斯利电影。叹。)

  • Vim 7.4 附带的语法突出显示支持的文件格式和编程语言数量大约是 Elvis 2.2 的 10 倍。

    它们的语法定义文件格式不兼容,因此您无法轻松地在它们之间进行移植。

  • Vim 7.4 附带 18 种标准配色方案。如果这对您来说还不够选择,Vim 颜色采样器包是截至撰写本文时精选的 177 个顶级方案的集合。除此之外还有更多。

    Elvis 2.2 仅提供三种配色方案,而且仅当您算上 GUI 和途易分别制定方案。这猫王主题档案总共还有十几种配色方案。

  • Vim 有一个内置的差异工具对命令行进行了许多改进,diff(1)例如语法着色和合并。

  • 除了 FTP 和 HTTP 之外,Vim 还可以通过 SCP、SFTP、WebDAV、RCP 和 RSYNC 编辑远程文件。

今天使用 Elvis 而不是 Vim 的最好理由是它小得多。在我的系统上,Elvis 2.2 的占用空间大约是 Vim 7.4 的 1/5。例如,这使其成为资源受限的嵌入式系统的不错选择。

埃尔维斯在其局限性范围内是一位非常有能力的编辑。但是,虽然 Elvis 近十年来一直停滞不前,但 Vim 却在不断进步。

答案2

作为 VI 的克隆,elvis 和 vim 之间似乎没有太多功能差异,这是可以理解的。根据学习 vi 编辑器,第六版,唯一的区别是 elvis 没有增量搜索。

从 elvis 到 vim 不太可能有太多的学习曲线 - 毕竟它们都基于 vi,并且至少共享相同的基本命令,例如导航、模式、搜索。

最有可能的是,如果您要安装 vim 并将其作为您的主要编辑器一天 - 您已经知道 elvis 提供的哪些功能(如果有)是您会错过的,以及 vim 可能给您带来的任何不便(如果有)。

我对 elvis 不太熟悉,但是 vim 的一些优点是丰富的插件,并且它得到了维护。最新版本的 vim (7.3) 发布于2010年,elvis最新版本(2.2.0)发布于2003年

笔记:正如 alexios 所评论的 - 更改发行版并不意味着您不能简单地继续使用 elvis。

答案3

作为一名长期elvis用户(可能从 1991 年开始),elvis我缺少一个功能vim,即显示模式。

elvis“所见即所得”编辑html和手册页非常方便troff,分屏hex模式也非常有用。

不幸的是,elvis它自 2004 年起就被废弃了,并且缺少 UTF-8 支持,这使得我大部分时间都使用vim它。

相关内容