[slime-cvs] CVS slime/contrib

CVS User sboukarev sboukarev at common-lisp.net
Sun Jan 3 15:58:29 UTC 2010


Update of /project/slime/cvsroot/slime/contrib
In directory cl-net:/tmp/cvs-serv9550/contrib

Modified Files:
	ChangeLog slime-repl.el 
Log Message:
* contrib/slime-repl.el (sldb-insert-frame-call-to-repl): New function
for inserting a call to a frame into the REPL. Bound to C-y in SLDB.

* swank-backend.lisp (frame-call): New function.
Returns a string representing a call to the entry point of a frame.
* swank-ccl.lisp (frame-call): Implementation of the above.
* swank-sbcl.lisp (frame-call): Ditto.


--- /project/slime/cvsroot/slime/contrib/ChangeLog	2010/01/03 15:34:54	1.328
+++ /project/slime/cvsroot/slime/contrib/ChangeLog	2010/01/03 15:58:29	1.329
@@ -1,3 +1,8 @@
+2010-01-03  Stas Boukarev  <stassats at gmail.com>
+
+	* slime-repl.el (sldb-insert-frame-call-to-repl): New function
+	for inserting a call to a frame into the REPL. Bound to C-y in SLDB.
+
 2010-01-03  Tobias C. Rittweiler  <tcr at freebits.de>
 
 	* swank-arglists.lisp (arglist-index): Return NIL if more
--- /project/slime/cvsroot/slime/contrib/slime-repl.el	2009/11/30 14:47:40	1.33
+++ /project/slime/cvsroot/slime/contrib/slime-repl.el	2010/01/03 15:58:29	1.34
@@ -457,6 +457,9 @@
 (slime-define-keys slime-inspector-mode-map
   ((kbd "M-RET") 'slime-inspector-copy-down-to-repl))
 
+(slime-define-keys sldb-mode-map
+  ("\C-y" 'sldb-insert-frame-call-to-repl))
+
 (def-slime-selector-method ?r
   "SLIME Read-Eval-Print-Loop."
   (slime-output-buffer))
@@ -1465,6 +1468,18 @@
    (slime-repl-send-string (format "%s" `(swank:inspector-nth-part ,number)))
    (slime-repl))
 
+(defun sldb-insert-frame-call-to-repl ()
+  "Insert a call to a frame at point."
+  (interactive)
+  (let ((call (slime-eval `(swank-backend::frame-call
+                            ,(sldb-frame-number-at-point)))))
+    (slime-switch-to-output-buffer)
+    (if (>= (point) slime-repl-prompt-start-mark)
+        (insert call)
+	(save-excursion
+	  (goto-char (point-max))
+	  (insert call))))
+  (slime-repl))
 
 (defun slime-set-default-directory (directory)
   "Make DIRECTORY become Lisp's current directory."





More information about the slime-cvs mailing list