我是计划的新手,但能够让它在 emacs 中运行。我喜欢在 emacs 的一个缓冲区中打开文件,并在另一个缓冲区中打开球拍解释器,这样我就可以在编写时进行测试等。问题是每次我想测试某些东西时,我都必须保存文件(没什么大不了的),然后使用(输入!“程序名”)在解释器中重新加载它。
反正每次我保存文件时都会自动重新加载吗?每次更改某些内容时都必须手动重新加载文件真的很乏味,特别是因为我仍在学习方案,所以我必须来回进行大量更改。非常感谢任何帮助,谢谢!
最有用的选项可能是Geiser。
除了其他出色的功能外,它还允许您通过击键编译当前文件,或仅评估当前的定义。我认为它有据可查,并且是您可以获得的最接近 SLIME for Scheme 的文件。
如果你可以不用 Emacs,DrRacket 也是一个很好的工作环境。
Geiser 和/或 Quack 是 Emacs 非常好的模式。使用 DrRacket 也是一个不错的选择。
但要更从字面上回答您的问题:
您可以添加以下内容.emacs
并将其绑定到 F5 键,以获得 DrRacket 的运行命令的粗略近似:
(defun run-roughly-like-dr-racket ()
(interactive)
(let ((w (selected-window)))
(set-buffer-modified-p t) ;force save buffer so that enter! ...
(save-buffer) ;...will re-evaluate
(other-window -1)
(run-scheme)
(select-window w)
(comint-send-string (get-buffer-process "*scheme*")
(format "(enter! \"%s\")\n" (buffer-file-name)))
(pop-to-buffer (get-buffer-process "*scheme*") t)
(select-window w)))