[slime-devel] Re: PATCH: Some more support for running multiple simultaneous connections
Peter Seibel
peter at javamonkey.com
Wed Feb 25 02:26:20 UTC 2004
Helmut Eller <e9626484 at stud3.tuwien.ac.at> writes:
> I changed this a bit, so that the 'current-prefix-arg' is used. This
> way we don't have to modify the signatures of other functions.
Ah. I wasn't aware of that variable. I learn something about emacs
everyday. Nice.
> > +(defslimefun lisp-implementation-type-name ()
> > + #+cmu "cmu"
> > + #+sbcl "sbcl"
> > + #+openmcl "openmcl"
> > + #+lispworks "lispworks"
> > + #+allegro "allegro"
> > + #+clisp "clisp")
> No, no, no. This style is taboo. The proper way is to define a new
> interface function and to implement it in the implementation
> specific file.
Oh yeah. I didn't think of it was such a simple function but you are,
of course, correct.
> I'll ask Erik Enge to give you CVS write permissions.
Cool. In the meantime, you might want to apply this patch--you forgot
to include these two functions that are used by some of the code you
checked in.
-Peter
Index: slime.el
===================================================================
RCS file: /project/slime/cvsroot/slime/slime.el,v
retrieving revision 1.217
diff -u -r1.217 slime.el
--- slime.el 24 Feb 2004 23:31:34 -0000 1.217
+++ slime.el 25 Feb 2004 02:24:11 -0000
@@ -654,6 +654,29 @@
(slime-read-lisp-implementation-type-name)))
(t (error "Invalid prefix argument: %S" prefix-arg))))
+(defun slime-find-connection-by-type-name (name)
+ (dolist (p slime-net-processes)
+ (let ((slime-dispatching-connection p))
+ (slime-with-connection-buffer (p)
+ (when (string= (slime-lisp-implementation-type-name) name)
+ (return p))))))
+
+(defun slime-read-lisp-implementation-type-name ()
+ (let ((default (slime-lisp-implementation-type-name)))
+ (completing-read
+ (format "Name (default %s): " default)
+ (mapcar
+ #'(lambda (p)
+ (let ((slime-dispatching-connection p))
+ (slime-with-connection-buffer (p)
+ (list (slime-lisp-implementation-type-name)))))
+ slime-net-processes)
+ nil
+ t
+ nil
+ nil
+ default)))
+
(defmacro slime-define-keys (keymap &rest key-command)
`(progn . ,(mapcar (lambda (k-c) `(define-key ,keymap . ,k-c))
key-command)))
--
Peter Seibel peter at javamonkey.com
Lisp is the red pill. -- John Fraser, comp.lang.lisp
More information about the slime-devel
mailing list