MicroEMACS 就是那个 Linus 用的 Emacs 编辑器。关于 Linus 到底算不算 Emacs 党。这是一个很可疑的问题。
关于 Emacs 的历史知识,下面的 Repo 有列出各种历史版本的 Emacs。
安装起来很容易,总共不到1mb,macOS 下面有预先编译好的版本,能直接运行,(不过图形界面需要 X Window,tty版本没法用鼠标和退格键),照官方说明就是了。
相比 GNU/Emacs 主要特点是相对图形化,基本操作和裸的 GNU/Emacs 没多少区别。当然 package 是根本不兼容的,它用的是完全不同的配置语言。
哦对了,因为这个编辑器本身的问题,不支持非ASCII字符的显示,所以对中文支持不友好。
比较让人吃惊的是,内置游戏里面居然有麻将!!
我一直在想 Emacs 里面没有麻将游戏,之前学Lisp的时候还写了个原型出来。
结果。。。
原来是 Window 7 里面的那个。
以及在Windows里面的经典纸牌这里也有:
这个才是日历的正确用法嘛。
很明显,MicroEMACS 的配置语言不是 Emacs Lisp。所以这也是为啥 Linus 不能算通常意义下的 Emacs 党。实际上 MicroEMACS 有很多版本,上面的那个是公认比较好的 JASSPA 版,Linus自己也维护了一个版本: uemacs/uemacs.git - Micro-emacs
8 个赞
接下来是另外一个 Emacs ,jed 的介绍。
这一个同样很轻量,而且支持 UTF-8,不过在 X 下面的表现不如 MicroEmacs 那么出色,但是能支持终端下的鼠标点击。有一个很不错的优点,支持多线程。
同样它不是用 Emacs Lisp 扩展,而是用了一种类似C的脚本语言的s-lang。
我已经用它来代替之前在终端环境下使用的vim了,现在已经懒得折腾那些插件了,至少写中文的时候能方便一点。
至于 RMS 对这些 Emacs 的看法:
https://www.emacswiki.org/emacs/ErsatzEmacs
这些都不叫Emacs。
1 个赞
用 MicroEmacs 主要还是为了速度快吧,所以有没有 X 界面我觉得倒是不重要。
只不过现有所有的 uEmacs 的中文/utf8支持都挺成问题的。
QEmacs 有 UTF-8 支持,甚至还内置了中文输入法,支持CSS渲染,不过我没编译成功。
它的多语言支持基于一个居住在日本的葡萄牙人写的编辑器,Yudit
最后我终于把魔爪伸向了 TECO,没错就是最早的 Emacs所基于的编辑器!
vi,Emacs,都是屏幕操作的,ex,sed是行操作的,TECO,全称 Tape Editor and COrrector ,是字符操作的,顾名思义,最早是用来编辑纸带的,后来也能用来编辑ACSII文件。
http://almy.us/teco.html
TECO的历史远比unix久,如果想在现代操作系统上尝试,可以用这个用 C 实现的 TECO。这个版本支持实时显示编辑内容,也就是 Vedio 模式,但是还是要通过输入指令来编辑,而且没内容高亮。附赠原版说明书。需要指定输出和输入,只能同时编辑一个文件。
另外一个看起来更加上道一点的(似乎就是因为这个有个状态栏),顾名思义,是可以实时显示的 Vedio TECO,相比前一个更加现代化一点,编辑的时候不用建立缓存,而且界面更加直观一点,支持多 Buffer。
cvsimport of VideoTECO, for my own extensions. I keep this here for historic reasons only. Please check out SciTECO! - GitHub - rhaberkorn/videoteco-fork: cvsimport of VideoTECO, for my own extensi...
图为 Vedio TECO,上方是实时显示界面,下方是命令输入框,不支持非ASCII字符。
在性能方面,绝对放心,和你用的电脑内存一样大的文件都能编辑,而且飞快,就是自虐了一点。
体积上,只要264K。
TECO要在每条指令以后连续按两个ESC执行命令(Vim用户:喵喵喵??),当然可以设置成其他字符以免在某些平台上没ESC可用。能用宏扩展,扩展语言就是操作命令,和后来的一些编辑器,比如vi一样能在命令之前加数字参数来重复执行,支持用负数作为参数(3l表示向下两行,-3l是向上两行)。
TECO扩展语言是非模块的,而且无法传递参数,程序之间只能通过全局变量交流。(Haskell用户:???),有人评价shell script是只写的,写完以后就不知道什么意思。然而TECO语言才真叫无法阅读,用户写的宏需要写不少注释来方便维护。
我大概理解了为什么说 Emacs 是精神病人的编辑器了。
如果嫌编译安装麻烦的话,有个Emacs Lisp实现:
https://www.emacswiki.org/emacs/teco.el
3 个赞
我试用了Emacs Lisp实现的TECO,感觉可以用来替代Evil的EX模式和一部分正则功能,在Emacs里面实现个支持UTF-8的TECO估计不难。然并软。
MicroEMACS的UI很棒,而且工具栏Buffer不会和普通Buffer混起来。感觉GNU/Emacs实现不了那种用ASCII模拟的图形界面。
目前还有主要问题是高亮支持得不多。
不明白以前没有高亮的时候是怎么码的……
LdBeth
2017 年5 月 12 日 03:38
10
感觉自己入了一个大坑:
这是上面 Video TECO 的维护者搞的现代化TECO编辑器,有行号,有高亮,支持终端和GTK+3界面,GTK界面支持CSS渲染。目前还是测试版,但是已经能很好地用了。
因为基于Scintilla ,所以很容易植入一些现代编辑器的功能。
如上图所示,支持中文等多语言显示,但是删除是半个中文字节,也就是一个字节。
有一个在线 DEMO 可以用。
LdBeth
2017 年5 月 24 日 11:55
12
没有做 AI ,而且最近在重构,打算用这个做个Elisp 编程的范例。
David
2017 年8 月 10 日 13:09
13
1 个赞
LdBeth
2017 年8 月 10 日 13:20
14
CL 系的 Emacs 和 Rust Emacs 之前在 macOS 编译不成功,只试过 CCL IDE 附带的一个 Emacs,是基于 CMULisp 的 Helmlock 的一个分支。
最近换了 Gentoo Linux ,考虑重新试一下。
David
2017 年9 月 4 日 08:43
15
1 个赞
补个 XEmacs
用 ssh forward 在 macOS 上体驗的。这个版本沒有 gnus, calendar 等功能,能看出和同時期 GNU/Emacs 明顯的区別是在 Dired 是个单独实現上。
guo
2019 年1 月 16 日 12:29
18
为何"牛逼的编辑器",第一个面对的问题都是"实在找不着北,不想玩儿了,可是如何退出来呢?"
1 个赞
LdBeth
2019 年1 月 16 日 13:16
19
就和現在的 3A 大作游戏都自帯新手教学,以前的大作比如 Swordquest 沒有手册就不能玩了一样。而現在能玩的旧游戏有两种,一种是面向新玩家的以致敬为主,就能有各種现代特性,
另一种则是面向硬核老玩家的完全复刻,大家都知道規則,自然不需要多餘的说明。
一个极端的例子,Tetris 这样的游戏太出名,人人都知道規則。
換句話說,退不出 vi
是见识不足,退不出 vim
是智力不够。
1 个赞
LdBeth
2019 年1 月 16 日 13:26
21
the story is, “how to quit vim” is a question on StackOverflow. and the sad story is everyone knows it’s a kind of trolling. And another sad story is someone takes trolling as real, and the even worse story is I have to answer those who take the trolling as real as if the story is real.
这个 github 头像有点熟悉,在哪见过。。。想起来是作者今天在论坛注册了,发了一个回复推广 teco 。
感觉他应该回复这个帖子啊:smiley: