您好,欢迎来到二三娱乐。
搜索
您的当前位置:首页Vim Vs Emacs

Vim Vs Emacs

来源:二三娱乐

这就很明显,spacemacs这个项目会拉拢一部分Vim用户,的确,它成功地吸引了我的注意力,我早就想试下这个“操作系统"是如何牛逼。

下面我单纯的从用户的角度来比较两者,对比非常浅。

包管理

对于一直用惯了vim简陋的包管理的我,一看到emacs的包管理,的确有点惊艳到我。

在emacs中,只需要点击菜单的Options->Manage Emacs Packages,既能打开emacs的包管理器,打开包管理器之后,可以搜索,可以安装,可以访问主页,多么友好的用户体验,跟Vim真是天差地别。

emacs包管理器 安装窗口

由于各种原因,在天朝下载可能很慢,但用户可以更换镜像源,就像linux上apt,yum和macOS上的HomeBrew一样,有个官方的服务器专门存放这些包,而且世界各地也有志愿同步官方的镜像源。

以上只是新用户的我的体验而已,然而通过阅读一些资料之后,我们发现其实emacs也是长期没有自带的包管理器的,在emacs 23的时代出现了一个非官方的包管理:packages.el。后来到了emacs 24才被集成到里面去。

另外还要说下这货的更新其实非常麻烦,首先要进入package-list-packages然后在需要更新的包标记为需要更新,问题在于Package-list-packages是列出所有的包,包括了没有安装的,意味着你要标记其实非常麻烦...

现在来看vim的包管理,实际上vim根本没有包管理,我们来谈下vim的包管理发展史。

  • 最开始的时候,用户必须把每个插件不同文件手动放在指定的目录上

  • 后来出现一种压缩格式,用户只需要在vim中执行:so xxx.sz就可以自动将包释放到对应的目录,

总结:vim由于先天原因找包比较困难,但是找到之后维护起来比emacs简单得多。

补全

vim的话,如果使用了ycm的话,vim script本身的补全反而找不到较好的方案呢,各位知道怎么弄?

shell或者终端模拟器

emacs的有自带的用elisp写的eshell,类似vimshell的地位,说实话,这个eshell难配置,难用,而且慢,经常卡,使用体验输给vimshell。

emacs当然也有终端模拟器,可惜打开之后尽是乱码,当然这可能和我使用zsh+oh-my-zsh有关。

在这一点上vim获胜了。

搜索定位

补全那一小节有一些没说,似乎用emacs的人不喜欢fuzzy complete或者fuzzy search,我用company的补全真的很难习惯。什么是fuzzy请看下面的动图:

ycm

emacs也有一个imenu,但是支持的语言类型太少和ctrlp-funky没得比,后者支持三十多种语言。

当然,emacs在文本搜索中有一个优势就是实时显示,这一点貌似还么有vim插件实现过。

其它优秀插件

emacs也有当却和evil不能和谐共处,至今没有找到体验和上面的vim-multiple-curosr一致的包。

vim-multiple-curosr vim-easymotion

magit & vim-fugitive

emacs上的magit包体验真的很不错,涵盖了大部分git命令,git有很多命令很难记住,但magit的帮助非常给力,通常是两个字母的组合按键,按下前一个字母之后出现窗口提示下一步能做什么。

相比之下,vim-fugitive就相对简陋些不过够用,一个git status窗口下也能完成很多操作。

lisp

第一次认识lisp,是从它的数学表达式开始,然后它竟然是逆波兰式的,果然名副其实的古老编程语言,瞬间好感提升。

然后写lisp需要写大量的括号,所以好像因此出现一种paredit的编辑模式,减少因为括号太多导致的错误,看了视频介绍觉得很好用,特别适合lisp和html这样的语言。

当然我对lisp的认识只建立在一两个视频上,所以不敢多少。

org-mode

好吧,我还没有尝试过这货,因为我看的那视频那位大神说他弄了几个月才熟悉。但我大概知道他的作用:todo list & gtd & note ;

这样的工具非常多了,我不觉得在编辑上面弄这些是个好的选择。

所谓的操作系统

  • 听歌什么的
  • 收发邮件
  • twitter & 微博
  • ...

只要命令行可以做到的,都可以集成到vim & neovim上,实际的确有。

浮云。

总结

程序员的编辑器的要求就是:

  • 快速编辑
  • 文件定位
  • 补全跳转
  • 搜索替换

除此之外都是浮云,在编辑器方面emacs永远输给vim。

Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务