[slime-devel] slime doesn't handle spaces in inferior-lisp-program ?

Hi, My setup is. (setq inferior-lisp-program "C:/Program Files/Steel Bank Common Lisp/1.0/sbcl.exe") (add-to-list 'load-path "C:/Program Files/Emacs/site-lisp/slime-2.0") (require 'slime) (slime-setup) When I execute M-x slime I get the error message "Spawning child process: invalid argument". Experimenting a bit, I found that: (file-exists-p inferior-lisp-program) returns t (set-variable 'explicit-shell-file-name inferior-lisp-program) + M-x shell will get me a SBCL "shell". After moving SBCL to c:\sbcl and changing my config to (setq inferior-lisp-program "C:/sbcl/sbcl.exe") I tried M-x slime again and everything worked fine! I've been looking through the slime source (both 2.0 and the latest snapshot) and the split-string calls in slime-read-interactive-arg sure looks suspicious. Is this a known issue? /A

"André" <erdna123@gmail.com> writes:
My setup is.
(setq inferior-lisp-program "C:/Program Files/Steel Bank Common Lisp/1.0/sbcl.exe") (add-to-list 'load-path "C:/Program Files/Emacs/site-lisp/slime-2.0") (require 'slime) (slime-setup)
When I execute M-x slime I get the error message "Spawning child process: invalid argument". Experimenting a bit, I found that:
(file-exists-p inferior-lisp-program) returns t (set-variable 'explicit-shell-file-name inferior-lisp-program) + M-x shell will get me a SBCL "shell".
After moving SBCL to c:\sbcl and changing my config to (setq inferior-lisp-program "C:/sbcl/sbcl.exe") I tried M-x slime again and everything worked fine!
I've been looking through the slime source (both 2.0 and the latest snapshot) and the split-string calls in slime-read-interactive-arg sure looks suspicious.
Is this a known issue?
Yes and no. I've heard of people having trouble with spaces in inferior-lisp-program name, but I don't recall seeing a proper bugreport -- so thanks! By the way: assuming you installed SBCL with the .msi installer, you can use (setq inferior-lisp-program "sbcl") as a workaround for now, as SBCL should be in PATH. Cheers, -- Nikodemus Schemer: "Buddha is small, clean, and serious." Lispnik: "Buddha is big, has hairy armpits, and laughs."

On 12/13/06, Nikodemus Siivola <nikodemus@random-state.net> wrote:
"André" <erdna123@gmail.com> writes:
My setup is.
(setq inferior-lisp-program "C:/Program Files/Steel Bank Common Lisp/1.0/sbcl.exe") (add-to-list 'load-path "C:/Program Files/Emacs/site-lisp/slime-2.0") (require 'slime) (slime-setup)
When I execute M-x slime I get the error message "Spawning child process: invalid argument". Experimenting a bit, I found that:
(file-exists-p inferior-lisp-program) returns t (set-variable 'explicit-shell-file-name inferior-lisp-program) + M-x shell will get me a SBCL "shell".
After moving SBCL to c:\sbcl and changing my config to (setq inferior-lisp-program "C:/sbcl/sbcl.exe") I tried M-x slime again and everything worked fine!
I've been looking through the slime source (both 2.0 and the latest snapshot) and the split-string calls in slime-read-interactive-arg sure looks suspicious.
Is this a known issue?
Yes and no. I've heard of people having trouble with spaces in inferior-lisp-program name, but I don't recall seeing a proper bugreport -- so thanks!
By the way: assuming you installed SBCL with the .msi installer, you can use
(setq inferior-lisp-program "sbcl")
as a workaround for now, as SBCL should be in PATH.
Alternatively, you should be able to just escape the spaces in the path name: (add-to-list 'load-path "C:/Program\ Files/Emacs/site-lisp/slime-2.0") -- Bill Clementson

Or, use the Windows "short filename" (obtainable via e.g. 'c:\>dir /x'): (add-to-list 'load-path "C:/progra~1/Emacs/site-lisp/slime-2.0") (This will be familiar to Corman Lisp users.) Bill Clementson wrote:
Alternatively, you should be able to just escape the spaces in the path name: (add-to-list 'load-path "C:/Program\ Files/Emacs/site-lisp/slime-2.0") -- John Pallister john@synchromesh.com

* André [2006-12-13 11:10+0100] writes:
I've been looking through the slime source (both 2.0 and the latest snapshot) and the split-string calls in slime-read-interactive-arg sure looks suspicious.
Is this a known issue?
Yes, it's a known issue. Instead of setting inferior-lisp-program you can set slime-lisp-implementations. Which allows you the specify the program and its args as list of strings (to avoid the need for string splitting). E.g. something like this should work for you: (setq slime-lisp-implementations '((sbcl ("C:/Program Files/Steel Bank Common Lisp/1.0/sbcl.exe" ; ... args can be inserted here )))) Helmut.
participants (5)
-
André
-
Bill Clementson
-
Helmut Eller
-
John Pallister
-
Nikodemus Siivola