Hi there, Attached is a trivial patch to initialize slime-lisp-implementations by looking for Debian packaged Common-Lisp implementations on path.
This is far from ideal, but it is a start and it allows me to run $ emacs -f slime to start emacs and get directly into a slime session (provided I have clisp, ecl, sbcl or cmucl on my $PATH). Greetings, Torsten
>From dc06400cfc13d0d572cc46770680b7c7306d2039 Mon Sep 17 00:00:00 2001 From: Torsten Landschoff <tors...@landschoff.net> Date: Sat, 2 May 2009 01:30:41 +0200 Subject: [PATCH] Add trivial initialization of slime-lisp-implementations. --- debian/changelog | 8 ++++++++ slime.el | 11 ++++++++++- 2 files changed, 18 insertions(+), 1 deletions(-) diff --git a/debian/changelog b/debian/changelog index 24b4a40..023f900 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +slime (1:20090409-1.1) unstable; urgency=low + + [ Torsten Landschoff ] + * slime.el: Populate slime-lisp-implementations from known common + lisp implementations on PATH (closes: #491602). + + -- Torsten Landschoff <tors...@debian.org> Sat, 02 May 2009 01:25:22 +0200 + slime (1:20090409-1) unstable; urgency=low * New upstream version. diff --git a/slime.el b/slime.el index 7f0f1bb..04c5793 100644 --- a/slime.el +++ b/slime.el @@ -123,6 +123,15 @@ Return nil if the ChangeLog file cannot be found." (setq slime-protocol-version (eval-when-compile (slime-changelog-date))) +(defun slime-gather-lisp-implementations () + "Compute sane default value for slime-lisp-implementations." + (let ((known-lisps '("sbcl" "clisp" "ecl" "cmucl"))) + (remove-if + 'null + (mapcar + (lambda (l) (if (executable-find l) (list l (list l)))) + known-lisps)))) + ;;;; Customize groups ;; @@ -1116,7 +1125,7 @@ last activated the buffer." (defvar inferior-lisp-program "lisp" "*Program name for invoking an inferior Lisp with for Inferior Lisp mode.") -(defvar slime-lisp-implementations nil +(defvar slime-lisp-implementations (slime-gather-lisp-implementations) "*A list of known Lisp implementations. The list should have the form: ((NAME (PROGRAM PROGRAM-ARGS...) &key INIT CODING-SYSTEM ENV) ...) -- 1.6.2.4