我用 SLIME 做这些事情。我通常像这样在远程计算机上启动 lisp:
whoplisp@laptop:~$ ssh -L4005:127.0.0.1:4005 remotecomputer
whoplisp@remotecomputer:~$ sbcl
(require :asdf)
(require :swank)
(setf swank:*dedicated-output-stream-port* nil)
(swank:create-server)
然后我可以从 emacs 中在笔记本电脑上启动一个 slime 会话:
M-x slime-connect
localhost
4005
C-x C-f /ssh:remotehost:project/test.lisp
您必须设置 TRAMP 才能正常工作。您还应该确保您有一个合理的 ssh 设置(如果您想远程工作)。将此添加到 /etc/ssh/ssh_config。它将加快许多 ssh 连接的握手速度。
Host remotehost
ControlMaster auto
ControlPath /tmp/%r@%h:%p
但是,如果您只想让事情在本地机器上运行,那么一切都会容易得多。您可以重新连接 SLIME 并使用 Mx slime-list-threads 停止您之前在 lisp 映像中启动的作业。