emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/lisp/replace.el,v


From: Juri Linkov
Subject: [Emacs-diffs] Changes to emacs/lisp/replace.el,v
Date: Thu, 01 May 2008 23:55:44 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Juri Linkov <jurta>     08/05/01 23:55:44

Index: replace.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/replace.el,v
retrieving revision 1.269
retrieving revision 1.270
diff -u -b -r1.269 -r1.270
--- replace.el  21 Mar 2008 06:12:34 -0000      1.269
+++ replace.el  1 May 2008 23:55:44 -0000       1.270
@@ -1005,7 +1005,8 @@
       (nreverse result))))
 
 (defun occur-read-primary-args ()
-  (let* ((default
+  (let* ((default (car regexp-history))
+        (defaults
           (list (and transient-mark-mode mark-active
                      (regexp-quote
                       (buffer-substring-no-properties
@@ -1020,12 +1021,20 @@
                 (regexp-quote (or (car search-ring) ""))
                 (car (symbol-value
                       query-replace-from-history-variable))))
-        (default (delete-dups (delq nil (delete "" default))))
+        (defaults (delete-dups (delq nil (delete "" defaults))))
+        ;; Don't add automatically the car of defaults for empty input
+        (history-add-new-input nil)
         (input
          (read-from-minibuffer
-          "List lines matching regexp: "
-          nil nil nil 'regexp-history default)))
-    (list input
+          (if default
+              (format "List lines matching regexp (default %s): "
+                      (query-replace-descr default))
+            "List lines matching regexp: ")
+          nil nil nil 'regexp-history defaults)))
+    (list (if (equal input "")
+             default
+           (prog1 input
+             (add-to-history 'regexp-history input)))
          (when current-prefix-arg
            (prefix-numeric-value current-prefix-arg)))))
 
@@ -1123,6 +1132,8 @@
                           (buffer-list))))))
 
 (defun occur-1 (regexp nlines bufs &optional buf-name)
+  (unless (and regexp (not (equal regexp "")))
+    (error "Occur doesn't work with the empty regexp"))
   (unless buf-name
     (setq buf-name "*Occur*"))
   (let (occur-buf




reply via email to

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