+2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
+
+ * viper-util.el (viper-read-key-sequence): fixed so it'll read
+ fast key sequences in emacs native mode
+ (viper-events-to-keys): deleted
+
+ * viper.el (describe-key, describe-key-briefly): get rid of
+ viper-events-to-keys.
+
+ * ediff-init.el (ediff-has-gutter-support): Steven Turnbull's patch.
+
+ * ediff-wind.el (ediff-setup-control-frame): Use
+ ediff-has-gutter-support.
+
+ * ediff-util.el (ediff-dispose-of-variant-according-to-user):
+ check if buff is alive.
+
+ * ediff.el: typo in comment.
+
2002-02-08 Richard M. Stallman <rms@gnu.org>
* Makefile.in (maybe_bootstrap): Add an infinite sleep-loop.
nil ; emacs form
))
+
+(defun ediff-has-gutter-support-p ()
+ (ediff-cond-compile-for-xemacs-or-emacs
+ (and (featurep 'gutter) (console-on-window-system-p)) ; xemacs form
+ nil ; emacs form
+ ))
+
+
(defun ediff-use-toolbar-p ()
(and (ediff-has-toolbar-support-p) ;Can it do it ?
(boundp 'ediff-use-toolbar-p)
;; BUFF is the buffer, BUFF-TYPE is either 'A, or 'B, 'C, 'Ancestor
(defun ediff-dispose-of-variant-according-to-user (buff bufftype ask keep-variants)
;; if this is indirect buffer, kill it and substitute with direct buf
- (if (ediff-with-current-buffer buff ediff-temp-indirect-buffer)
+ (if (and (ediff-buffer-live-p buff)
+ (ediff-with-current-buffer buff ediff-temp-indirect-buffer))
(let ((wind (ediff-get-visible-buffer-window buff))
(base (buffer-base-buffer buff))
(modified-p (buffer-modified-p buff)))
(if (ediff-has-toolbar-support-p)
(ediff-cond-compile-for-xemacs-or-emacs
(progn ; xemacs
- (set-specifier top-toolbar-height (list ctl-frame 2))
- (set-specifier top-gutter (list ctl-frame nil))
+ (if (ediff-has-gutter-support-p)
+ (set-specifier top-gutter (list ctl-frame nil)))
(sit-for 0)
(set-specifier top-toolbar-height (list ctl-frame 0))
;;(set-specifier bottom-toolbar-height (list ctl-frame 0))
))
-(defsubst viper-events-to-keys (events)
- (viper-cond-compile-for-xemacs-or-emacs
- (events-to-keys events) ; xemacs
- events ; emacs
- ))
-
;; it is suggested that an event must be copied before it is assigned to
;; last-command-event in XEmacs
(elt (listify-key-sequence keyseq) 0)))
(if (viper-ESC-event-p event)
(let (unread-command-events)
- (viper-set-unread-command-events keyseq)
(if (viper-fast-keysequence-p)
(let ((viper-vi-global-user-minor-mode nil)
(viper-vi-local-user-minor-mode nil)
+ (viper-vi-intercept-minor-mode nil)
+ (viper-insert-intercept-minor-mode nil)
(viper-replace-minor-mode nil) ; actually unnecessary
(viper-insert-global-user-minor-mode nil)
(viper-insert-local-user-minor-mode nil))
- (setq keyseq (read-key-sequence prompt continue-echo)))
- (setq keyseq (read-key-sequence prompt continue-echo)))))
+ ;; Note: set unread-command-events only after testing for fast
+ ;; keysequence. Otherwise, viper-fast-keysequence-p will be
+ ;; always t -- whether there is anything after ESC or not
+ (viper-set-unread-command-events keyseq)
+ (setq keyseq (read-key-sequence nil)))
+ (viper-set-unread-command-events keyseq)
+ (setq keyseq (read-key-sequence nil)))))
keyseq))
(defadvice describe-key (before viper-read-keyseq-ad protect activate)
"Force to read key via `viper-read-key-sequence'."
- (interactive (list (viper-events-to-keys
- (viper-read-key-sequence "Describe key: ")))))
+ (interactive (list (viper-read-key-sequence "Describe key: "))))
(defadvice describe-key-briefly
(before viper-read-keyseq-ad protect activate)
"Force to read key via `viper-read-key-sequence'."
- (interactive (list (viper-events-to-keys
- (viper-read-key-sequence "Describe key briefly: ")))))
+ (interactive (list (viper-read-key-sequence "Describe key briefly: "))))
(defadvice find-file (before viper-add-suffix-advice activate)
Chuck Thompson (cthomp@@cs.uiuc.edu),
Ray Tomlinson (tomlinso@@bbn.com),
Raymond Toy (toy@@rtp.ericsson.se),
+Stephen J. Turnbull (stephen@@xemacs.org),
Jan Vroonhof (vroonhof@@math.ethz.ch),
Colin Walters (walters@@cis.ohio-state.edu),
Philippe Waroquiers (philippe.waroquiers@@eurocontrol.be),