python - 如何在 shell 中运行 emacs lisp 解释器?

标签 python shell emacs elisp

我正在尝试在 Emacs Lisp 中运行一些程序示例。

  • 我们如何在 shell 中运行它的解释器,然后逐行运行一些命令并立即获得输出?它是否类似于Python,我们首先输入python来运行它的解释器,然后在其中输入任何命令?

  • 如何在不进入解释器的情况下运行这样的程序?它是否类似于Python,我们可以在shell中运行python myscript.py

谢谢。

最佳答案

1) 在 Emacs 中使用 REPL:M-x ielm RET

我不知道是否有基于 shell 的 REPL,但您可以制作一个而不需要太多困难。

考虑:

$ emacs -Q --daemon=myrepl
$ emacsclient --socket-name=myrepl --eval '(princ user-emacs-directory)'
"~/.emacs.d/"
$ emacsclient --socket-name=myrepl --eval '(kill-emacs)'

(但实际上,只需使用 ielm)。

2) 如果您确实有用 elisp 编写的 shell 脚本,请查看以下问答:Run elisp program without Emacs?

但这并不是一件常见的事情,而且有很多理由不编写 elisp 脚本。

如果您不熟悉 Emacs 并且只是有一个 .el 文件,您不知道如何处理,那么这几乎肯定不是您想要做的。 Elisp 库几乎总是要在 Emacs 内部加载,而不是从 shell 执行。

(如果您完全不确定,我建议您用一个示例来更新您的问题,因为您可能会问错误的问题。)

关于python - 如何在 shell 中运行 emacs lisp 解释器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25130570/

相关文章:

python - 在多路树或连通图中查找一组元素/节点的根元素

unix - '-a' 在 Unix Shell 脚本中做什么

Emacs + magit - 垂直责备

emacs - 如何防止 Emacs 调整窗口大小?

python - 使用 Wea​​syprint 创建文件响应

Python Pandas,一个字典列,为每个键/值对创建新行

python - 使用 selenium 按表选择链接

以科学记数法返回的 Bash 数字序列?

bash - 从 shell 脚本中的变量中逐行读取

logging - Emacs clojure repl 不显示任何错误或异常