粘液连接不起作用

时间:2012-07-02 09:59:29

标签: emacs lisp 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

如何让它发挥作用?

1 个答案:

答案 0 :(得分:6)

  1. 修复空白 - 用双反斜杠转义它。

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

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

  4. 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-helperslime包是互斥的(它们是相同的包,只是换行方式不同),所以如果你有类似的东西:

    (add-to-list 'load-path "/path/to/slime")
    (require 'slime)
    

    然后,如果您想使用quicklisp-slime-helper,请将其评论,并仅使用其中一个的配置。

    PS。重新

    (add-hook 'inferior-lisp-mode-hook (lambda () (inferior-slime-mode t)))
    

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