[slime-cvs] CVS update: slime/slime.el

Helmut Eller heller at common-lisp.net
Thu Apr 22 20:12:24 UTC 2004


Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv24591

Modified Files:
	slime.el 
Log Message:
(slime-repl-update-banner): Add workaround to force the proper
behavior of the the first command in the REPL buffer.
(slime-repl-shortcut-history): Define the variable to make XEmacs
happy.

Date: Thu Apr 22 16:12:24 2004
Author: heller

Index: slime/slime.el
diff -u slime/slime.el:1.271 slime/slime.el:1.272
--- slime/slime.el:1.271	Wed Apr 21 18:59:04 2004
+++ slime/slime.el	Thu Apr 22 16:12:23 2004
@@ -1808,7 +1808,7 @@
                         (slime-lisp-implementation-type)
                         (if (featurep 'xemacs)
                             (process-id (slime-connection))
-                            (process-contact (slime-connection)))
+                          (process-contact (slime-connection)))
                         (slime-pid)
                         (expand-file-name default-directory))))
     ;; Emacs21 has the fancy persistent header-line.
@@ -1823,13 +1823,22 @@
            (slime-repl-insert-prompt ""))
           (t
            (slime-repl-insert-prompt (concat "; " banner))
-           (pop-to-buffer (current-buffer))))))  
+           (pop-to-buffer (current-buffer))))
+    ;; We are called from a timer function and for unkown reasons the
+    ;; first command after executing the timer function is looked up
+    ;; in the buffer in which the timer was started and not in the
+    ;; then current buffer.  Add a dummy event as workaround. -- he
+    (unless (featurep 'xemacs)
+      (setq unread-command-events
+            (append (listify-key-sequence "\C-l")
+                    unread-command-events)))))
 
 (defun slime-init-output-buffer (connection)
   (with-current-buffer (slime-output-buffer t)
     (set (make-local-variable 'slime-buffer-connection) connection)
     ;; set the directory stack
-    (setq slime-repl-directory-stack (list (expand-file-name default-directory)))
+    (setq slime-repl-directory-stack 
+          (list (expand-file-name default-directory)))
     (slime-repl-update-banner)))
 
 (defvar slime-show-last-output-function 
@@ -5775,6 +5784,9 @@
 (defvar slime-repl-shortcut-table nil
   "A list of slime-repl-shortcuts")
 
+(defvar slime-repl-shortcut-history '()
+  "History list of shortcut command names.")
+
 (defun slime-handle-repl-shortcut ()
   (interactive)
   (if (save-excursion
@@ -5784,9 +5796,7 @@
                        (completing-read "Command: " 
                                         (slime-bogus-completion-alist
                                          (slime-list-all-repl-shortcuts))
-                                        nil
-                                        t
-                                        nil
+                                        nil t nil
                                         'slime-repl-shortcut-history))))
         (call-interactively (slime-repl-shortcut.handler shortcut)))
       (insert (string slime-repl-shortcut-dispatch-char))))





More information about the slime-cvs mailing list