0

我想在 Fedora 上的 emacs 中使用 sml-mode。我的~/.emacs文件包含

(add-to-list 'load-path "/home/gbuday/prooftheory/sml-mode")
(autoload 'sml-mode "sml-mode" "Major mode for editing SML." t)
(autoload 'run-sml "sml-proc" "Run an inferior SML process." t)

该目录包含 git 克隆的 sml 模式文件。

我编辑sml-mode.el

(defcustom sml-program-name "/home/gbuday/prooftheory/polyml/bin/poly"
"Program to run as Standard SML read-eval-print loop."
:type 'string)

这确实启动了 PolyML,我想使用的版本。

当我键入M-x run-sml运行劣质 SML 读取评估打印循环时,我得到

Cannot open load file: sml-proc

在小缓冲区中。我应该在这里做些什么更好?

4

2 回答 2

2

没有sml-proc我知道的文件。您使用的是什么版本sml-mode,看起来当前是 6.7,并且也应该完成自动加载run-sml(或) ,例如sml-runsml-mode

(autoload 'run-sml "sml-mode")

您应该在配置文件中设置 sml 程序(setq sml-program-name ...),您不需要更改源代码。

于 2017-05-11T11:12:20.510 回答
1

尝试这个:

(setenv "PATH" (concat "/usr/local/smlnj/bin:" (getenv "PATH")))
(setq exec-path (cons "/usr/local/smlnj/bin"  exec-path))

将 /usr/local 替换为适当的路径。

于 2020-03-17T15:13:02.253 回答