Luke Gorrie luke@bluetail.com writes:
Paolo Amoroso amoroso@mclink.it writes:
By the way, since I use the repl often, I do this under Linux. I keep an Emacs frame with the SLIME repl, and another frame with the Lisp code buffer on which I am working. Each Emacs frame goes into its own KDE virtual desktop.
Imho "ratpoison" wm is best solution with Emacs with multiple frames (no KDE&stuff, Emacs look&feel) [ http://ratpoison.sourceforge.net/ ].
Switching from the Lisp buffer to the repl is a simple matter of Ctrl-Fn.
I post my (temporary) solution on alt.pl.comp.os.linux.newbie few weeks ago, I think it's better solution than yours. First message [1] (below) is my .emacs file. See fragment with `ssb-make-select-key' macro:
.....
(macrolet ((CREATE-SELECT-KEYS (&rest lst) `(progn ,@(mapcar (lambda (x) `(ssb-make-select-key ,@x)) lst))))
(CREATE-SELECT-KEYS
;; --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ;; key ssb-x-cdll prefix(es) command hook-name mode-name ;; --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
("s-i" "info" Info info ) ("s-s" "eshell" eshell eshell ) ("s-w" "w3m" w3m w3m ) ("s-t" "text" text ) ("s-;" "slime/ielm" (slime-repl ielm) nil nil (slime-repl-mode inferior-emacs-lisp-mode)) ("s-l" "LISP/elisp" (lisp emacs-lisp) )
;; --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- )) ; hook-name and mode-name are optional. They are created from `prefix(es)'.
.....
[1] Message-ID: 87y8mzuf9u.fsf_-_@darkstar.example.net
my dot-emacs.
[2] Message-ID: 87r7sruf4q.fsf@darkstar.example.net
`ssb-make-selct-key' macro - it do the job.
[3] Message-ID: 87n03fuf38.fsf@darkstar.example.net
funny "library" (stupid and hairy (stupidness and hairness was intended) dll) required by `ssb-make-select-key' macro.
I use the `slime-selector' command. This is not bound anywhere by default because it really needs a global binding to be useful.
If you put it on e.g. `C-c s' then you can jump into the repl with `C-c s r' and back to the most recently visited Lisp source by pressing `C-c s l'. It supports more buffers too, and is extensible.
Iteresting. I must try it.
Regards.