[slime-devel] (slime-compilation-finished) doesnt help solving stated goal.

Madhu enometh at meer.net
Fri Oct 22 04:08:11 UTC 2010


* 2010-09-03  Helmut Eller  <heller at common-lisp.net>
|	For C-c C-k, ask before loading possibly broken fasl files.
|
|	* slime.el (slime-compilation-result): Add 2 slots: loadp and
|	faslfile.
|	(slime-compilation-finished): Use them to load the faslfile.
|	* swank.lisp (:compilation-result): Add 2 slots. Use keyword
|	constructor.

when (slime-compile-and-load-file) notices harmless Warnings during
compilation, it prompts with
  (y-or-n-p "Compilation failed.  Load fasl file anyway? ")

There is no way for the user to scroll the *slime-compilation* window to
see if the warnings are harmless or not, before he can answer `y'

I would suggest giving the user an option like like in the appended
patch, but I suspect Helmut would reject it as it would complicate
slime, and would find it simpler to add a new keymap for this situation,
with new functions to scroll the buffer and also remap [next-line] and
[previous-line] to the new functions so any user level override without
modifying slime.el is impossible.

[BTW on an unrelated note, C-h k C-c C-k in slime buffers in (Emacs git
2010-10-03) says: C-c C-c is undefined.  The binding works but doesn't
show up in C-h b either.  I'm afraid the baroquely over-engineered
keybinding mechanisms makes it impossible to debug where the problem is.]

--
Madhu


+(defvar slime-compilation-force-load t)
+
 (defun slime-compilation-finished (result)
   (with-struct (slime-compilation-result. notes duration successp
                                           loadp faslfile) result
@@ -2673,7 +2675,7 @@ to it depending on its sign."
       (slime-highlight-notes notes))
     (run-hook-with-args 'slime-compilation-finished-hook notes)
     (when (and loadp faslfile 
-               (or successp
+               (or successp slime-compilation-force-load
                    (y-or-n-p "Compilation failed.  Load fasl file anyway? ")))
       (slime-eval-async `(swank:load-file ,faslfile)))))
 





More information about the slime-devel mailing list