[slime-devel] Two more small patches

Harald Hanche-Olsen hanche at math.ntnu.no
Thu Feb 22 20:17:54 UTC 2007


While we're on the subject of small patches, I have two files in my
slime directory giving me an "M" whenever I update from cvs.  Both
were reported to the list, and both were ignored (or just forgotten
perhaps), so I'll try again:

The first is for slime.el (function slime-init-keymaps), and is needed
for the development version of emacs.  The problem seems to be that
keys with modifiers can produce bigger numbers that will fit into the
slots of a string, so one needs to use a vector instead.  Replacing
string with vector seems harmless on earlier emacsen (but I haven't
tested it on xemacs).

The second is for swank.lisp (function set-package), and fixes the
name returned to obey the case conventions of the user.

(Not blaming anybody for ignoring these:  I suspect they just fell
through the cracks of a busy schedule.)

- Harald
-------------- next part --------------
Index: slime.el
===================================================================
RCS file: /project/slime/cvsroot/slime/slime.el,v
retrieving revision 1.764
diff -u -r1.764 slime.el
--- slime.el	22 Feb 2007 14:10:06 -0000	1.764
+++ slime.el	22 Feb 2007 20:04:24 -0000
@@ -786,7 +786,7 @@
   (loop for (key command) in slime-doc-bindings
         do (progn
              ;; We bind both unmodified and with control.
-             (define-key slime-doc-map (string key) command)
+             (define-key slime-doc-map (vector key) command)
              (unless (equal key ?h)     ; But don't bind C-h
                (let ((modified (slime-control-modified-char key)))
                  (define-key slime-doc-map (vector modified) command)))))
@@ -797,7 +797,7 @@
   (loop for (key command) in slime-who-bindings
         do (progn
              ;; We bind both unmodified and with control.
-             (define-key slime-who-map (string key) command)
+             (define-key slime-who-map (vector key) command)
              (let ((modified (slime-control-modified-char key)))
                  (define-key slime-who-map (vector modified) command))))
   ;; C-c C-w is the prefix for the who-xref map.
Index: swank.lisp
===================================================================
RCS file: /project/slime/cvsroot/slime/swank.lisp,v
retrieving revision 1.458
diff -u -r1.458 swank.lisp
--- swank.lisp	24 Jan 2007 22:54:08 -0000	1.458
+++ swank.lisp	22 Feb 2007 20:04:27 -0000
@@ -2669,7 +2669,7 @@
 Return its name and the string to use in the prompt."
   (let ((p (parse-package package)))
     (setq *package* p)
-    (list (package-name p) (package-string-for-prompt p))))
+    (list (unparse-name (package-name p)) (package-string-for-prompt p))))
 
 (defun send-repl-results-to-emacs (values)
   (flet ((send (value)


More information about the slime-devel mailing list