我想在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-cloned sml-mode文件。
我编辑了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
在迷你缓冲区中。我该怎么做才能更好?
答案 0 :(得分:1)
我没有注意到sml-proc
个文件。您使用的是什么版本的sml-mode
,看起来当前版本是6.7,自动加载run-sml
(或sml-run
)也应该来自sml-mode
,例如
(autoload 'run-sml "sml-mode")
您应该在配置文件中使用(setq sml-program-name ...)
设置sml程序,您无需更改源代码。
答案 1 :(得分:1)
尝试一下:
(setenv "PATH" (concat "/usr/local/smlnj/bin:" (getenv "PATH")))
(setq exec-path (cons "/usr/local/smlnj/bin" exec-path))
用适当的路径替换/ usr / local。