[slime-devel] patch: make slime-urge-bytecode-recompile less irritating

Sean O'Rourke sorourke at cs.ucsd.edu
Fri Jan 26 20:07:00 UTC 2007


Recipe for frustration:

    * edit slime.el
    * save it in a state that you don't want to use immediately
    * M-x slime
    * "slime.elc is older than slime.el. Recompile/reload first? "
      No!
    * bang head on keyboard as slime petulantly refuses to start

This patch makes the prompting non-fatal.

/s

Index: slime.el
===================================================================
RCS file: /project/slime/cvsroot/slime/slime.el,v
retrieving revision 1.753
diff -p -u -w -r1.753 slime.el
--- slime.el	24 Jan 2007 22:55:13 -0000	1.753
+++ slime.el	26 Jan 2007 19:56:37 -0000
@@ -1549,8 +1551,8 @@ The rules for selecting the arguments ar
                     :coding-system coding-system :init init :name name
                     :init-function init-function)))
     (slime-check-coding-system coding-system)
-    (when (or (not (slime-bytecode-stale-p))
-              (slime-urge-bytecode-recompile))
+    (when (not (slime-bytecode-stale-p))
+      (slime-urge-bytecode-recompile)
       (let ((proc (slime-maybe-start-lisp program program-args buffer)))
         (slime-inferior-connect proc args)
         (pop-to-buffer (process-buffer proc))))))
@@ -1650,13 +1652,11 @@ Warning: don't use this in XEmacs, it se
 (defun slime-urge-bytecode-recompile ()
   "Urge the user to recompile slime.elc.
 Return true if we have been given permission to continue."
-  (if (featurep 'xemacs)
+  (unless (featurep 'xemacs)
       ;; My XEmacs crashes and burns if I recompile/reload an elisp
       ;; file from itself. So they have to do it themself.
-      (y-or-n-p "slime.elc is older than slime.el. Continue? ")
-    (if (y-or-n-p "slime.elc is older than slime.el. Recompile/reload first? ")
-        (progn (slime-recompile-bytecode) t)
-      nil)))
+    (when (y-or-n-p "slime.elc is older than slime.el. Recompile/reload first? ")
+      (slime-recompile-bytecode))))
 
 (defun slime-abort-connection ()
   "Abort connection the current connection attempt."




More information about the slime-devel mailing list