+2008-11-28 Juanma Barranquero <lekktu@gmail.com>
+
+ * emacs-lisp/re-builder.el (reb-auto-update): Remove redundant code.
+ (re-builder): Reuse window displaying the *RE-Builder* buffer, if any.
+ (reb-initialize-buffer): Update matches, in case we're reentering
+ RE Builder mode.
+
2008-11-28 Chong Yidong <cyd@stupidchicken.com>
* complete.el (PC-do-complete-and-exit): Synch to 2008-11-24
(goto-char (+ 2 (point-min)))
(cond ((reb-lisp-syntax-p)
(reb-lisp-mode))
- (t (reb-mode))))
+ (t (reb-mode)))
+ (reb-do-update))
(defun reb-mode-buffer-p ()
"Return non-nil if the current buffer is a RE Builder buffer."
(when reb-target-buffer
(reb-delete-overlays))
(setq reb-target-buffer (current-buffer)
- reb-target-window (selected-window)
- reb-window-config (current-window-configuration))
- (select-window (split-window (selected-window) (- (window-height) 4)))
+ reb-target-window (selected-window))
+ (select-window (or (get-buffer-window reb-buffer)
+ (progn
+ (setq reb-window-config (current-window-configuration))
+ (split-window (selected-window) (- (window-height) 4)))))
(switch-to-buffer (get-buffer-create reb-buffer))
(reb-initialize-buffer)))
(condition-case nil
(progn
(when (or (reb-update-regexp) force)
- (reb-assert-buffer-in-window)
(reb-do-update))
"")
(error " *invalid*"))))