用于 Emacs Lisp 的 REPL

Posted

技术标签:

【中文标题】用于 Emacs Lisp 的 REPL【英文标题】:REPL for Emacs Lisp 【发布时间】:2011-10-04 23:43:05 【问题描述】:

Emacs Lisp 有哪些 REPL?

Emacs 中只有一个吗?

是否有一些在 Emacs 之外的终端内运行?

【问题讨论】:

【参考方案1】:

基于这个问题:REPL on console emacs,可以使用M-x ielm(劣质emacs lisp模式)。

【讨论】:

谢谢!必须在emacs中运行,还是可以在emacs之外的bash中运行?我在 bash 中尝试了 iemlielm,但它不起作用。 我不认为它可以在 Emacs 之外运行,但我可能错了。 术语“REPL”代表“read-eval-print-loop”,它最初来自 Lisp,它实际上有名为 readevalprint 的函数。 Emacs Lisp 也不例外,所以你可以通过emacs --batch --eval '(while t (print (eval (read))))' 得到你想要的。 我容易忘记它的名字,所以我给它起了一个“别名”:(defun repl() (interactive) (ielm))。然后您可以使用M-x repl 启动解释器。 @Jabba 你也可以说:(defalias 'repl 'ielm)【参考方案2】:

有一个(正在进行的)Emacs REPL 可以从命令行使用。它目前支持基本的命令行编辑和历史记录。

代码是hosted on Github。

【讨论】:

【参考方案3】:

Gitlab 上有this project。 REPL 可以在终端或 Emacs 的 minibuffer 上运行。即使您在“无窗口系统”模式下运行它(使用-nw)。

【讨论】:

以上是关于用于 Emacs Lisp 的 REPL的主要内容,如果未能解决你的问题,请参考以下文章

Emacs Lisp 和 Common Lisp 之间的主要区别是啥? [关闭]

2020-03-01emacs 中使用LISP

Common Lisp 入门配置开发环境 in Emacs

emacs lisp

分析行为不端的 Emacs Lisp 的提示?

Emacs Lisp:获取字符的 ascii 值