[slime-cvs] CVS update: slime/slime.el
Helmut Eller
heller at common-lisp.net
Sat Feb 7 11:36:01 UTC 2004
Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv14360
Modified Files:
slime.el
Log Message:
(slime-undefine-function): New command. Bound to C-c C-u.
Date: Sat Feb 7 06:36:00 2004
Author: heller
Index: slime/slime.el
diff -u slime/slime.el:1.204 slime/slime.el:1.205
--- slime/slime.el:1.204 Thu Feb 5 18:20:14 2004
+++ slime/slime.el Sat Feb 7 06:35:59 2004
@@ -429,6 +429,7 @@
("\C-f" slime-describe-function :prefixed t :inferior t :sldb t)
("\M-d" slime-disassemble-symbol :prefixed t :inferior t :sldb t)
("\C-t" slime-toggle-trace-fdefinition :prefixed t :sldb t)
+ ("\C-u" slime-undefine-function :prefixed t)
("\C-a" slime-apropos :prefixed t :inferior t :sldb t)
("\M-a" slime-apropos-all :prefixed t :inferior t :sldb t)
;; Kinda crappy binding. Maybe we should introduce some extra
@@ -3324,6 +3325,13 @@
(interactive (list (slime-read-symbol-name "Disassemble: ")))
(slime-eval-describe `(swank:disassemble-symbol ,symbol-name)))
+(defun slime-undefine-function (symbol-name)
+ "Unbind the function slot of SYMBOL-NAME."
+ (interactive (list (slime-read-symbol-name "fmakunbound: ")))
+ (slime-eval-async `(swank:undefine-function ,symbol-name)
+ (slime-buffer-package t)
+ (lambda (result) (message "%s" result))))
+
(defun slime-load-file (filename)
"Load the Lisp file FILENAME."
(interactive (list
@@ -5070,23 +5078,14 @@
'(())
(slime-check-top-level)
(slime-eval-async '(cl:loop) "CL-USER" (lambda (_) ))
- (let ((sldb-hook
- (lambda ()
- (slime-check "First interrupt."
- (when-let (sldb (get-sldb-buffer))
- (with-current-buffer sldb
- (equal sldb-level 1))))
- (sldb-quit))))
- (accept-process-output nil 1)
- (slime-check "In eval state."
- (not (null slime-rex-continuations)))
- (slime-interrupt)
- (slime-wait-condition "First interrupt" (lambda () (slime-sldb-level= 1))
- 5)
- (with-current-buffer (get-sldb-buffer)
- (sldb-quit))
- (slime-sync-to-top-level 5)
- (slime-check-top-level)))
+ (accept-process-output nil 1)
+ (slime-check "In eval state." (not (null slime-rex-continuations)))
+ (slime-interrupt)
+ (slime-wait-condition "First interrupt" (lambda () (slime-sldb-level= 1)) 5)
+ (with-current-buffer (get-sldb-buffer)
+ (sldb-quit))
+ (slime-sync-to-top-level 5)
+ (slime-check-top-level))
(def-slime-test loop-interrupt-continue-interrupt-quit
()
@@ -5096,16 +5095,14 @@
(slime-eval-async '(cl:loop) "CL-USER" (lambda (_) ))
(slime-wait-condition "running" #'slime-busy-p 5)
(slime-interrupt)
- (slime-wait-condition "First interrupt" (lambda () (slime-sldb-level= 1))
- 5)
+ (slime-wait-condition "First interrupt" (lambda () (slime-sldb-level= 1)) 5)
(with-current-buffer (get-sldb-buffer)
(sldb-continue))
(slime-wait-condition "running" (lambda () (and (slime-busy-p)
(not (get-sldb-buffer))))
5)
(slime-interrupt)
- (slime-wait-condition "Second interrupt" (lambda () (slime-sldb-level= 1))
- 5)
+ (slime-wait-condition "Second interrupt" (lambda () (slime-sldb-level= 1)) 5)
(with-current-buffer (get-sldb-buffer)
(sldb-quit))
(slime-sync-to-top-level 5)
More information about the slime-cvs
mailing list