comparison lisp/emacs-lisp/re-builder.el @ 41314:a2bce9d9c349

(re-builder): Don't re-enter RE Builder Mode.
author Eli Zaretskii <eliz@gnu.org>
date Tue, 20 Nov 2001 18:25:02 +0000
parents 2186cf9476ba
children fcb2aaafc8b2
comparison
equal deleted inserted replaced
41313:2186cf9476ba 41314:a2bce9d9c349
311 ;;;###autoload 311 ;;;###autoload
312 (defun re-builder () 312 (defun re-builder ()
313 "Call up the RE Builder for the current window." 313 "Call up the RE Builder for the current window."
314 (interactive) 314 (interactive)
315 315
316 (if reb-target-buffer 316 (if (and (string= (buffer-name) reb-buffer)
317 (reb-delete-overlays)) 317 (memq major-mode '(reb-mode reb-lisp-mode)))
318 (setq reb-target-buffer (current-buffer) 318 (message "Already in the RE Builder")
319 reb-target-window (selected-window) 319 (if reb-target-buffer
320 reb-window-config (current-window-configuration)) 320 (reb-delete-overlays))
321 (select-window (split-window (selected-window) (- (window-height) 4))) 321 (setq reb-target-buffer (current-buffer)
322 (switch-to-buffer (get-buffer-create reb-buffer)) 322 reb-target-window (selected-window)
323 (erase-buffer) 323 reb-window-config (current-window-configuration))
324 (reb-insert-regexp) 324 (select-window (split-window (selected-window) (- (window-height) 4)))
325 (goto-char (+ 2 (point-min))) 325 (switch-to-buffer (get-buffer-create reb-buffer))
326 (cond 326 (erase-buffer)
327 ((reb-lisp-syntax-p) 327 (reb-insert-regexp)
328 (reb-lisp-mode)) 328 (goto-char (+ 2 (point-min)))
329 (t (reb-mode)))) 329 (cond
330 ((reb-lisp-syntax-p)
331 (reb-lisp-mode))
332 (t (reb-mode)))))
330 333
331 (defun reb-change-target-buffer (buf) 334 (defun reb-change-target-buffer (buf)
332 "Change the target buffer and display it in the target window." 335 "Change the target buffer and display it in the target window."
333 (interactive "bSet target buffer to: ") 336 (interactive "bSet target buffer to: ")
334 337