Emacs 粘液连接不工作
我是一名Emacs和普通Lisp新手。我已经成功地在Emacs中安装了SLIME,但我无法运行它。Alt+xEmacs 粘液连接不工作,emacs,lisp,common-lisp,slime,Emacs,Lisp,Common Lisp,Slime,我是一名Emacs和普通Lisp新手。我已经成功地在Emacs中安装了SLIME,但我无法运行它。Alt+xslime 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,
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
我怎样才能让它工作
slime connect
时,它将期望一个Lisp映像(Lisp运行时)启动并侦听您连接到的服务器和端口。也许你不是故意的slime
将首先启动低级lisp程序
,然后连接到它。实际上,这就是你想要做的- 首先安装所需的Lisp
- 安装quicklisp。(请按照此处的说明进行操作:对于Windows,您可以使用Cygwin,也可以不使用curl,只需右键单击链接并执行“将目标另存为”巫术:)。如果不使用SBCL,那么--load可能不是lisp的选项。如果您当前的工作目录是保存quicklisp.Lisp文件的目录,请将其替换为:启动Lisp,输入REPL:
。要打印当前目录,如果不确定:(加载“quicklisp.Lisp”)
(目录“”)
- 阅读quicklisp slime helper的自述文件,并按照其中的说明进行操作。基本上,通过quicklisp安装后,您只需要配置一件事,即: (加载到/quicklisp/slime helper.el的“c:/完整路径”)
$home
,您可能在安装Emacs时将其设置为环境变量。请注意,quicklisp slime helper
和slime
包是互斥的(它是同一个包,只是包装方式不同),因此如果您有类似以下内容:
(add-to-list 'load-path "/path/to/slime")
(require 'slime)
然后,如果要使用quicklisp slime helper
,请将其注释掉,并仅使用其中一个的配置
附言
(add-hook 'inferior-lisp-mode-hook (lambda () (inferior-slime-mode t)))
这看起来是多余的,你为什么需要它/它是什么?您从哪里获得的
劣质粘液模式
?这对我来说并不熟悉。如果将点(插入符号)放置在其上并点击C-h f会发生什么情况?使用SLIME的常用方法是配置一个或多个Lisp。通常,m-x slime会启动预定义的Lisp并连接到它。请注意,您需要安装一个Lisp—类似于SBCL、CLISP、LispWorks、CCL,…@RainerJoswig,我已经安装了CLISP。您是否在init文件中的某个地方执行了(setq-substander-Lisp-program)/path/to/Lisp“
?~/。例如emacs。@AndrewMyers,没有。不过我有这样一个:(添加钩子“低级lisp模式钩子(lambda()(低级slime模式t)))
。好了,slime connect
用于连接到运行swank服务器的已经执行的lisp。否则,将低级lisp程序
设置为CLISP路径,只需执行M-x slime
即可启动。谢谢。有两个问题-Lisp可执行文件路径名中的空格和CLISP。更改到另一个目录并使用SBCL解决了这些问题。关于:(add hook'substander lisp mode hook(lambda()(substander slime mode t))
,我从某处复制了它。在我对该行进行注释后,Emacs仍然有效。在C-HF上,它给了我“描述函数”,当我输入名称时,它说没有找到匹配项。