开发者讨论如何让 Emacs 再次流行起来

Linux中国看到的

感觉emacs就是成也elisp,败也elisp。

Emacs 做不到开箱即用,配置需要的 elisp 也没有 vimscript 简单,也不像 vi/vimLinux 系统预装编辑器。

讲道理,如果不是大学的时候空闲时间足够多,有时间折腾,我现在估计也是在用Vim/Sublime/VS Code中的一个

我觉得得先出一本中文版的emacs教程和elisp教程 。一定要权威,要是elisp能改进一部分也好

5赞

这个量特别感人,需要方便的tex翻译插件。。。

做不到开箱即用那就肯定不会再次流行了╮(╯_╰)╭

4赞

Emacs 自 26.3 开始自带 Emacs Lisp入门教程。按C-h i. 这是链接 https://www.gnu.org/software/emacs/manual/html_node/eintr/

2赞

赞同,其它编辑器都有中文版,包括vim,就emacs没有,自带的只有一个emacs tutorial是中文的,但我打开emacs27.0.91版本的tutorial.cn发现里面也开始混杂一堆英文注释,感觉中文是没希望了

实际上我觉得elisp比vimscript的语法友好很多。
Emacs的问题在于 几乎无法在无配置的情况下做到有效的编辑
虽然我很喜欢Emacs,但是我仍然要说,相比一些编辑器(vscode atom)作为一个以GUI为主使用编辑器,设计上却还停留在TUI的思维上,在新手体验上是严重不足的,很多时候功能是隐藏的,不显式的(我使用了很长时间后才了解到有speed.bar),不直观的体验导致了学习成本增加,与学习兴趣的降低。
所以问题不在于elisp,也不在于复杂的自定义(这其实是加分项),而是无法有效吸引新人,并向新人展示其功能
看脸的年代。。。真的酒香也怕巷子深。
(虽然社区可能不屑于去吸引)

2赞

这个只能算快捷键tutorial。

安装费劲;不能开箱即用;使用中一路的问题;随用随改好几年,才终于满足需要了,别人问起来,除了把自己的配置文件拷贝给他们外,实在没有其它啥办法言简意赅的告诉他们该怎么使用。我的看法的话,这本身就是一个很个人的工具,流行起来不容易。

2赞

在reddit上看到了一篇很不错的elisp编程介绍: Emergency Elisp,通过和java对比介绍,很详细。介绍elisp基本语法,不涉及emacs api。通读一遍后,扫除了我知识上的一些盲区。

1赞

这也许可以降低一点门槛,但是发现 Emacs 的学习成本后,估计还是更愿意去用 VS Code 这样的学习成本较低的编辑器吧……

elisp这语言,概念多的没写过编辑器和编译器没法入门,缩写跟汇编似的,结果要类型类型么有,要对象对象么有,性能也没有很行,debug信息更是感人至深,居然只能靠二分法。。。而且学了也没法在别的地方用

2赞

elisp支持多线程,提高性能,增强UI表现力,emacs还是有希望的。

但是我就是受不了打字用鼠标

主要是Emacs Lisp这个东西对新人不友好吧,虽然有Easy Customization,但是大多数Easy Customization做不到的功能还不是要使用Emacs Lisp来写。

Emacs Lisp tutorial 搜索一下,排名第一的是我之前提到的官方入门教程。还是很简单的。

排名第二的李杀的教程是我强烈推荐的。教核心概念, 变量,字符串,函数,文件处理。例子也很丰富,比javascript简单多了(protoype,this的概念在javascript里很复杂)。

我当初连if的语法都没搞清楚就开始写插件了。社区和用户还是很友好的,从来没有人报怨过我的语法用得很糟糕。

2赞

有什么成本,拿第三方成熟的配置用就可以了。我就是拿Steve Purcell的配置练手了一年,有问题就问他。

VSCode也就那样,微软的一贯风格,UI对新手“友好”,有经验的程序员需要稍微深入一点的功能实现起来就很麻烦。

比如在当前路径递归搜索所有文件?在父目录递归搜索?向上第N层目录递归搜索?如果我不搜索文件只搜索目录怎么办?如何保证性能?

Emacs Lisp很简单,用李杀的教程边用边查,没有Lisp基础也就是半天的功夫。

换成vscode,即使能用typescript写出来,还必须以插件发布,不象Emacs只要把代码往~/.emacs里一贴了事。

我当初为了写教程开发vscode-matchit也是迫不得已,我给微软发issue,问有没有能在json配置里结合两个命令的办法。人家让我自己去stackoverlfow问然后就把我的issue关掉了 ( https://github.com/microsoft/vscode/issues/71582 )。这个客户支持是我接触过的所有开源项目里最差的。

Stackoverflow 挂了1年,0 upvote 0 回答, https://stackoverflow.com/questions/55484604/how-to-bind-one-shortcut-to-multiple-commands-by-testing-the-current-line-under 然后上个月被社区隐藏了。

7赞

像Vim那样基本大部分发行版预装(预装vi),就可以重新流行了。技术问题根本不是流行的关键,我觉得他们在emacs-devel上讨论更像是讨论emacs开发的roadmap

1赞