I tried to use slime on my Windows 7 box with a recent Emacs. I had problems giving the full path of the sbcl executable, as it had spaces in them. At last I have solved the problem by adding that path to the PATH environment variable and using a simple "sbcl.exe" in .emacs but in the long term it would be good to know how I can give such a space-containing path to Emacs.
This, this, this and this did not answer my question.
I tried various syntaxes like
;; 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\""
but I got
apply: Searching for program: no such file or directory, "d:/Program
What is the correct syntax for Windows paths containing spaces?
Edit: not an answer for the original question but related: one has to add (slime-setup '(slime-repl))
to .emacs
in order to start the slime-repl subprocess that gives a proper common lisp read-eval-print loop. In the old times it was started automatically but now you should be explicit.
Just remove the quotes inside your string, it should be the path, not a string of a string of the path. The spaces will be handled just fine.
"D:/Program Files/Steel Bank Common Lisp/1.1.12/sbcl.exe"
is how to specify that directory.
You should also look into adding the SBCL directory to your exec-path
variable. This is just like your PATH, Emacs looks there for executables. Add the directory to your exec-path
and specify your lisp program as "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")