【发布时间】:2010-09-06 02:57:42
【问题描述】:
我想使用一个现有的应用程序(用 OCaml 编写)并为其创建一个 Emacs“接口”(例如,Emacs GDB 模式)。我宁愿在不编写大量 Lisp 代码的情况下做到这一点。在 MVC 术语中,我希望 View 是 Emacs,但 Model 和 Controller 保持(主要)OCaml。
有人知道用 Lisp 以外的语言编写 Emacs 扩展的方法吗?这可以采用以某种其他语言绑定到 Emacs 扩展 API 的形式(例如,使 OCaml 成为一流的 Emacs 扩展语言)或 Emacs 交互模式,例如,扩展具有可以写入的管道Emacs Lisp 表达式并读出结果值。
【问题讨论】:
-
我建议你看看 merlin 是如何做到的,正如 Erik Allik 所建议的那样,例如github.com/the-lambda-church/merlin/blob/master/emacs/… 启动一个进程,github.com/the-lambda-church/merlin/blob/master/emacs/… 使用异步处理程序向 ocaml merlin 进程发送一个命令。