粘液连接不起作用

mis*_*tor 3 lisp emacs common-lisp slime

我是Emacs和Common Lisp新手.我已经在我的Emacs中成功安装了SLIME,但我无法运行它.Alt+ x slime-connect给出以下选项,接受哪个选项给出了粘贴在选项下面的错误.

Host: 127.0.0.1
Port: 4005

Connecting to Swank on port 4005...
make client process failed: connection refused, :name, SLIME Lisp, :buffer, nil,
                                                :host, 127.0.0.1, :service 4005,
                                                :nowait, nil
Run Code Online (Sandbox Code Playgroud)

我如何让它工作?

小智 6

  1. 修复空白 - 用双反斜杠来逃避它.

  2. 当你这样做时,slime-connect它会期望一个Lisp映像(Lisp运行时)启动并监听你连接的服务器和端口.可能你不是这个意思.

  3. slime将首先启动inferior-lisp-program,然后连接到它.实际上,这就是你想要做的.

https://github.com/quicklisp/quicklisp-slime-helper这是你可能想要尝试的东西(当你完成设置时,或者相反).或者只是保持它,让您感觉更舒适,更多设置.链接中的程序是一个帮助程序,通过quicklisp工作 - 您可能想要熟悉的东西,一种Lisp代码的包管理器,以及您在Emacs中运行的SLIME.可能,如果你发现它更容易

  • 首先安装你想要的Lisp.

  • 安装quicklisp.(按照此处的说明操作:http://www.quicklisp.org/beta/,但对于Windows,您可以使用Cygwin,或者代替curl,只需右键单击链接并执行"将目标另存为"伏都教魔术:).如果您不使用SBCL,那么 - load可能不适合您的lisp.将其替换为:启动Lisp,键入REPL : (load "quicklisp.lisp"),前提是您当前的工作目录是保存quicklisp.lisp文件的目录.要打印出当前目录,如果不确定:(directory ".").

  • 阅读README for quicklisp-slime-helper并按照其中的说明进行操作.基本上,在通过quicklisp安装后,您只想配置一件事,它是:

    (加载"c:/full-path-to/quicklisp/slime-helper.el")

在.emacs文件中.

如果您不熟悉*nix路径名,tilde表示当前用户的主目录,也就是说$HOME,您可能在安装Emacs时将其设置为环境变量.请注意,quicklisp-slime-helper并且slime包是互斥的(它是相同的包,只是以不同的方式包装),所以如果你有类似的东西:

(add-to-list 'load-path "/path/to/slime")
(require 'slime)
Run Code Online (Sandbox Code Playgroud)

然后,如果你想使用quicklisp-slime-helper,请注释掉,并仅使用其中一个的配置.

PS.回覆'

(add-hook 'inferior-lisp-mode-hook (lambda () (inferior-slime-mode t)))
Run Code Online (Sandbox Code Playgroud)

这看起来多余,为什么你需要/那是什么?你从哪里来的inferior-slime-mode?这对我来说并不熟悉.如果你在它上面放置点(插入符号)并击中会发生C-h f什么?