我尝试使用最近的Emacs在我的Windows 7盒子上使用粘液。我在提供sbcl可执行文件的完整路径时遇到了问题,因为它有空格。最后我通过将该路径添加到PATH环境变量并在.emacs中使用简单的“sbcl.exe”来解决了这个问题,但从长远来看,最好知道如何给出这样一个包含空格的路径Emacs的。
我尝试了各种语法,比如
;; Setup load-path, autoloads and your lisp system
(add-to-list 'load-path "d:/slime-2.6")
(require 'slime-autoloads)
(setq inferior-lisp-program "\"d:/Program Files/Steel Bank Common Lisp/1.1.12/sbcl.exe\""
但我得到了
apply: Searching for program: no such file or directory, "d:/Program
包含空格的Windows路径的正确语法是什么?
编辑:不是原始问题的答案,但相关:必须将(slime-setup '(slime-repl))
添加到.emacs
才能启动 slime-repl 子流程,从而提供正确的常见的lisp read-eval-print循环。在过去,它是自动启动的,但现在你应该明确。
答案 0 :(得分:1)
只需删除字符串中的引号,它应该是路径,而不是路径字符串的字符串。这些空间处理得很好。
"D:/Program Files/Steel Bank Common Lisp/1.1.12/sbcl.exe"
是如何指定该目录。
您还应该考虑将SBCL目录添加到exec-path
变量中。这就像你的PATH一样,Emacs在那里寻找可执行文件。将目录添加到exec-path
并将您的lisp程序指定为"sbcl"
(add-to-list 'load-path "d:/slime-2.6")
(require 'slime-autoloads)
(add-to-list 'exec-path "D:/Program Files/Steel Bank Common Lisp/1.1.12/")
(setq inferior-lisp-program "sbcl")