I usually keep my repl in another emacs frame, so I usually do this when starting a new lisp session:
- open the lisp code I want to work on, - M-x slime - C-x b to switch back to the lisp buffer - C-x 5 b to switch to the lisp buffer
These utilities might help with that kind of usage:
(defun slime-other-frame (&optional command coding-system) "Start an inferior^_superior Lisp and connect to its Swank server in a new frame." (interactive) (let ((buf (generate-new-buffer "slime"))) (switch-to-buffer-other-frame buf) (slime command coding-system)))
(defun slime-other-frame-switch-back (&optional command coding-system) "Start an inferior^_superior Lisp and connect to its Swank server in a new frame, then switch back to the frame where this command was invoked." (interactive) (let ((new-buf (generate-new-buffer "slime")) (current-buf (current-buffer))) (switch-to-buffer-other-frame new-buf) (slime command coding-system) (switch-to-buffer-other-frame current-buf)))
Comments welcome.
Best,
JEsse