[slime-devel] Multiple sessions with multiple lisps

David Steuber david at david-steuber.com
Sat Aug 20 01:35:26 UTC 2005


Hi Slimers,

I'm sure I saw a posting on the net somewhere on how to do this but all 
the Googling I've done over the past half day or so has failed to find 
it.  Here is what I want to do:

On OS X run both OpenMCL and SBCL in their own slime sessions (each 
having its own *inferior-lisp*).
When I do M-x slime, have OpenMCL come up as the default.
When I do M-x slime-openmcl start slime with openmcl or a new openmcl 
session
When I do M-x slime-sbcl start slime with SBCL or a new SBCL session

I keep up with CVS HEAD.

Here's what I've got so far in my .emacs:

;;; SLIME & Lisp
(add-to-list 'load-path "/Users/david/usr/src/slime")
(require 'slime)
(setq common-lisp-hyperspec-root
   "file:///Users/david/LispStuff/HyperSpec/")
;; Safari only works on Carbon Emacs (do-applescript)
(setq browse-url-browser-function
       (lambda (url &optional new-window)
         (message url)
         (do-applescript
             (concat "tell application \"Safari\" to open location \"" 
url "\""))))
(setenv "SBCL_HOME" "/Users/david/usr/lib/sbcl/")
(setq lisp-sbcl     "/Users/david/usr/bin/sbcl")
(setq lisp-openmcl  "/Users/david/usr/bin/openmcl")
(setf inferior-lisp-program lisp-sbcl)
(setq slime-edit-definition-fallback-function 'find-tag)
(slime-setup :autodoc t)
(global-set-key "\C-cs" 'slime-selector)

Unrelated to SLIME per se, but useful for editing Lisp code I also have:

;;; Local Emacs customizations for Lisp editing and whatever
(add-to-list 'load-path "/Users/david/usr/share/emacs") ; third party 
.el files be here
(keyboard-translate ?\( ?\[)
(keyboard-translate ?\[ ?\()
(keyboard-translate ?\) ?\])
(keyboard-translate ?\] ?\))

;; Riastradh of irc.freenode.net #lisp created paredit.el for Lisp 
editing
;; available from http://www.bloodandcoffee.net/campbell/paredit.el
(require 'paredit)
(autoload 'enable-paredit-mode "paredit"
   "Turns on pseudo-structural editing of Lisp code."
   t)
(add-hook 'lisp-mode-hook 'enable-paredit-mode)
(define-key paredit-mode-map "[" 'paredit-open-list)
(define-key paredit-mode-map "]" 'paredit-close-list)

I believe the keyboard translations were first proposed by Marco 
Baringer.  Taylor Campbell wrote paredit.el.  I've only recently 
started to use it, but it is pretty nifty.





More information about the slime-devel mailing list