emacs该如何应对neovim和oni?


#1

neovim分离了gui和core层,现在不少项目用neovim做底层用Electron做上层构,建新的功能强大ui性感的新型编辑器。

neovim

oni

我们emacs该怎么应对。

要是用electron做gui,emacs的orgmode还能更优雅100倍


#2

卡的一批,有啥好应对的,现在这样挺好的


#3

我来歪个楼,不说neovim,我只说electron。作为开发者,我是挺喜欢 electron 的,因为开发效率高,而且使用的是浏览器+ html+css 等技术栈,学过前端的就能开发,但是作为用户来说,我非常不喜欢 electron.每打开一个electron app就是打开了一个浏览器,就好像我在 Windows 上用的 postman, 钉钉 内存占用可以超过没开多少页面的 firefox, 在 Linux 网易云音乐的CPU 占用也比Firefox 高,虽说CPU 和内存是拿来用的,但是也不是这么用的!!


#4

core功能对emacs来说很容易实现,就像irony-mode或者lsp-mode,他们的工作原理跟core和gui的很类似。

现在emacs和vim都是单线程架构,做core效率可能不高, 一个更完美的core应该设计成多线程,充分利用多核。

两者分离之后,多人协作编辑很方便


#5

别的不说,Electron 说是跨平台,实际也就做了 Linux Windows macOS,连 FreeBSD 都没考虑支持过。至少基于 Xorg 的 Emacs 图形界面几乎支持所有的系统,而且颜色字体配好也不会丑。

和图片上类似的悬浮窗在 26 已经实现了,功能性的也不缺。


#6

emacs26的新特性可以在哪里看到?


#7

https://github.com/emacs-mirror/emacs/blob/emacs-26/etc/NEWS


#8

XP 都不支持,还说跨平台 :dog:


#9

日常用 vim/neovim 比较多,说 oni 卡的恐怕没下载试用过吧?并不是所有基于 Electron 的程序都占用超多资源的。oni 尤其如此,因为核心功能都已经在 neovim 中实现,Electron 端所负责的其实只是数据呈现和文本排版而已。之前简单试用了下 oni,内存占用好像也就 100 MB 多点。

诚然,oni 目前还是有一些小问题(官方说直到 1.0 版本前有问题都正常,现在才 0.2 版本呢),但开发状态一直很积极,对 oni 这个项目是可以有很多期待的。

另外值得关注的一个 neovim 前端是 https://github.com/dzhou121/gonvim ,基于 QT 的 Golang 绑定,中国人搞的。也是跨平台,性能应该更好些,不过开发状态一直不太稳定。


#10

不知道Emacs社区该怎么应对


#11

emacs要是能做成跟Things 3 一样好看我做梦都能笑醒

不过我觉得也只可能在梦里实现了- -


#12

卡、CPU、内存这些问题都可以通过优化和电脑的硬件升级来解决,还有就是,

https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00847.html 现任的 Emacs maintainer, John Wiegley 两年前就想这么干了,无奈被教主束缚着手脚,不过今年春天 Emacs 大佬们要在欧洲聚会,届时 另外一位 Maintainer Eli Zaretskii,教主,John Wiegley, 都会到场,一同商讨 Emacs 的未来。


#13

Emacs 社区其实一直都不是特别追赶潮流的,直到 2014 年 Eric.S Raymond 才提出要把Emacs的开发迁移到git上,他说,现在的 cool kid 都在玩 Git 了,我们不用 Git 就没有年轻的 Hacker 来玩 Emacs 了。

The uncomfortable truth is that many younger hackers already think Emacs is a dinosaur - difficult, bulky, armor-plated, and generally stuck in the last century. If we’re going to fight off that image, we cannot afford to make or adhere to choices that further cast the project as crusty, insular, and backward-looking.

https://lists.gnu.org/archive/html/emacs-devel/2014-01/msg00005.html

我觉得只要不被意识形态限制使用某些工具和理念,更实用主义一点,还是可以搞下去的。比如接受微软的LSP就是很好的。


讨论guile emacs
#14

难道不应该怕 xi-editor 吗, 主要是 gpu 渲染, 多线程, 并不是堆硬件就能提升性能的, 32核就为了format文件的时候快一点, 那不叫提升性能…


#15

不过意识形态确实是FSF的主要问题。


#16

这是它的优势,不是问题。。。。。


#17

https://www.youtube.com/watch?v=SKtQgFBRUvQ&t=774s

因为 xi 的后端是Rust 开发的,所以之前在Youtube 上面看过作者的关于 xi 性能和技术架构的介绍,在同步的情况的下,可以无障碍打开近200M的文件,后面还会增加异步加载文件的特性,现在只是因为Rust 社区的异步库还不成熟。因为有了Rust 写的后端,就有人用swift 写的OSX 界面前端,也有GTK 写的界面,还有终端运行的前端。


#18

是的,没信仰的软件都挂了。比如 XEmacs。不然就是靠商业公司续命了。


#19

oni有out-of-box javascript/typescript支持,我臆测能和vs code媲美,确实对入坑/传教很友好啊。另外vim最大黑点vimscript,oni还是neovim加了lua,听上去也相当美啊。


#20

vim 永远是编辑器,感觉 vim 社区大部分是这样认为的?
emacs 是操作系统,感觉 emacs 玩家或多或少也有这样的感受?

所以我感觉 neovim/oni/vim/xxx UI 再好看,再精致,大家也只会用它做编辑工作。
而 Emacs 则不同,所以 Emacs 有 Org-mode,eww,multimedia 等。而 vim 永远不会有这么强大的 GTD 工具,最少不会内置这样的工具。

另外,界面美丑这种东西很多时候看个人喜好把。举个不恰当的例子,个人就喜欢复古一点的风格,而不是界面上到处都是各种图标,各种按钮。

个人目前的观点是:如果你用 Emacs 只为编辑文件,写代码,vim 或许是更好的选择。