Emacs这玩意太难用了

**[quote=“z1003031335, post:1, topic:576, full:true”]

刚开始看了emacs首页的快速开始,还能捉急的编辑几下,然后看了spacemacs 的文档,快捷键多得一比,很多都看不懂,越看越乱。感觉还是vim上手容易啊,几天下来就能做简单编辑了 [/quote]

你不应该 ** 专门** 学习一种工具。 而是要在实践中,碰到问题,解决问题。慢慢就会了。

作为一个前vim党来说下自己的感受。

vim和emacs相比,第一个优势是vim的快捷键(:joy:我感觉vim快捷键更好个人感受不引战),第二个优势是小巧。

但是emacs和vim相比,优势是,第一,emacs的扩展语言emacs-lisp比那破vimscript好用太多。说vimscript是倒数第二垃圾的语言应该没人反驳吧:joy: 可扩展性也比vim强一些。第二,得利于第一点,emacs有着大量优秀的插件。vim的插件除了少数知名的,其它的都是弱鸡的半成品。第三,org-mode不解释。

spacemacs之所以能火,个人认为是其集成了evil全家桶,结合了vim的优点和emacs的优点。

来来来,告诉我,倒数第一垃圾的语言是什么? vimscript 作为一种配置语言,绝对够用。 事实上vim插件是可以用外部语言写的,ruby,py,go,lua 等语言可以为vim插件提供良好的并发支持和处理性能。 然而Emacs因为lisp太强,即使现在已经有了动态库支持,更多人还是倾向于用lisp,使得Emacs的性能为人诟病。(当然目前比Atom强多了) 有得有失吧。

倒数第一垃圾的语言是microsoft的批处理,哈哈哈:joy:

vimscript的确够用,但是拿来写比较漂亮,比较大的插件。会面临三个问题:第一,语法不清晰使得代码难以维护;第二,性能太渣卡成狗(据说vimscript的解释器连parser都没有 混在一起写的这能不卡?) ;第三,许多扩展机制只能使用atuocmd等这种ugly的hack手法实现。

至于拿第三方语言写扩展,我没写过,但是据说是用一种很奇葩的方式进行耦合,麻烦又蛋疼。

上面说的这些问题可都是实实在在的,不然neovim为什么会被看好?话说回来,我对neovim还是挺期待的,现在据说都有chrome扩展版的GUI了,说不定以后嵌入各种IDE不是问题。。。。

其实对emacs的性能问题,这锅确确实实得emacs-lisp背。

不过呢,好消息是并不是所有的lisp都很慢,emacs-lisp由于太古老,历史遗留原因罢了。 现代的scheme编译器编译出的程序性能和C不相上下。

我看社区有人用guile代替elisp作为emacs的扩展语言,弄了个guile base emacs,很遗憾的是,这个工程量太大,项目半死不活的。。。。

动态库支持是25才加上的,个人觉得现在用的人少是因为时间还不够,一段时间后,对于性能敏感的地方,和调用第三方的库,肯定还是用动态库的方式最好。

期待emacs界的neomacs,哈哈哈:joy:

2 个赞

vim 快捷键给力 因为它是专门编辑文档的 我很同意,顺便私信一下 什么是倒数第一吧~:yum:

现在新出来的guile2.2 据说可以兼容Emacs,在Reddit上面,Emacs的维护者已经在讨论这个问题了.不可否认,对比scheme,elisp的确不如

1 个赞