lawrence mitchell wence@gmx.li writes:
So I'm trying to get slime and sbcl working together happily. Versions: SBCL 0.8.5.50 (CVS as of 2003/11/23) Slime (CVS as of 2003/11/23)
In order to get slime to work properly, I needed to make two minor modifications to swank-sbcl.lisp and swank.lisp.
The change to swank-sbcl.lisp was to allow SLIME-EDIT-FDEFINITION to work properly. The pathname returned by SWANK:FUNCTION-SOURCE-LOCATION hadn't been resolved via sbcl's LOGICAL-PATHNAME-TRANSLATIONS. Hence, Emacs was sending me to buffers like "SYS:SRC;CODE;DEFMACRO.LISP", rather than "/opt/cvs-trees/sbcl/src/code/defmacro.lisp". Not knowing whether this is even vaguely correct, I added a TRUENAME call as below:
[...]
:filename (and pathname (namestring pathname))
:filename (and pathname (namestring (truename pathname)))
This code has been working previously so I wonder if something has changed in SBCL? I'm building the latest now, but have committed the change anyway - thanks!
I also committed some small fixage to the Elisp code for looking up definitions in SBCL when source-form number isn't available and it has to use regexps.
The second problem was rather more severe, since swank-sbcl.lisp doesn't define SWANK:EVAL-IN-FRAME, there was a compilation reader error on compiling swank.lisp, specifically:
[...]
(defslimefun eval-string-in-frame (string index)
- (to-string (swank-backend:eval-in-frame (from-string string) index)))
- (to-string (swank-backend::eval-in-frame (from-string string) index)))
Whoops, something I broke yesterday. Applied, thanks again.
Cheers, Luke