emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: In shell-mode, should *Completions* buffer disappear after completio


From: Richard Stallman
Subject: Re: In shell-mode, should *Completions* buffer disappear after completion?
Date: Sat, 12 Jan 2002 17:23:53 -0700 (MST)

I fixed this.  Thanks.


Index: comint.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/comint.el,v
retrieving revision 1.256
retrieving revision 1.257
diff -c -c -r1.256 -r1.257
*** comint.el   31 Dec 2001 20:18:09 -0000      1.256
--- comint.el   12 Jan 2002 06:59:02 -0000      1.257
***************
*** 2795,2821 ****
  (defun comint-dynamic-list-completions (completions)
    "List in help buffer sorted COMPLETIONS.
  Typing SPC flushes the help buffer."
!   (let ((conf (current-window-configuration)))
!     (with-output-to-temp-buffer "*Completions*"
!       (display-completion-list (sort completions 'string-lessp)))
!     (message "Hit space to flush")
!     (let (key first)
!       (if (save-excursion
!           (set-buffer (get-buffer "*Completions*"))
!           (setq key (read-key-sequence nil)
!                 first (aref key 0))
!           (and (consp first) (consp (event-start first))
!                (eq (window-buffer (posn-window (event-start first)))
!                    (get-buffer "*Completions*"))
!                (eq (key-binding key) 'mouse-choose-completion)))
!         ;; If the user does mouse-choose-completion with the mouse,
!         ;; execute the command, then delete the completion window.
!         (progn
!           (mouse-choose-completion first)
!           (set-window-configuration conf))
!       (if (eq first ?\ )
!           (set-window-configuration conf)
!         (setq unread-command-events (listify-key-sequence key)))))))
  
  
  (defun comint-get-next-from-history ()
--- 2795,2835 ----
  (defun comint-dynamic-list-completions (completions)
    "List in help buffer sorted COMPLETIONS.
  Typing SPC flushes the help buffer."
!   (let ((window (get-buffer-window "*Completions*")))
!     (if (and (eq last-command this-command)
!            window (window-live-p window) (window-buffer window)
!            (buffer-name (window-buffer window)))
!       ;; If this command was repeated, and
!       ;; there's a fresh completion window with a live buffer,
!       ;; and this command is repeated, scroll that window.
!       (with-current-buffer (window-buffer window)
!         (if (pos-visible-in-window-p (point-max) window)
!             (set-window-start window (point-min))
!           (save-selected-window
!             (select-window window)
!             (scroll-up))))
! 
!       (let ((conf (current-window-configuration)))
!       (with-output-to-temp-buffer "*Completions*"
!         (display-completion-list (sort completions 'string-lessp)))
!       (message "Type space to flush; repeat completion command to scroll")
!       (let (key first)
!         (if (save-excursion
!               (set-buffer (get-buffer "*Completions*"))
!               (setq key (read-key-sequence nil)
!                     first (aref key 0))
!               (and (consp first) (consp (event-start first))
!                    (eq (window-buffer (posn-window (event-start first)))
!                        (get-buffer "*Completions*"))
!                    (eq (key-binding key) 'mouse-choose-completion)))
!             ;; If the user does mouse-choose-completion with the mouse,
!             ;; execute the command, then delete the completion window.
!             (progn
!               (mouse-choose-completion first)
!               (set-window-configuration conf))
!           (if (eq first ?\ )
!               (set-window-configuration conf)
!             (setq unread-command-events (listify-key-sequence key)))))))))
  
  
  (defun comint-get-next-from-history ()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]