]> git.eshelyaron.com Git - emacs.git/commitdiff
(diff-find-file-name): Rename `batch' to `noprompt' and
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 14 Sep 2008 21:16:30 +0000 (21:16 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 14 Sep 2008 21:16:30 +0000 (21:16 +0000)
be more honest when we don't know.
(diff-tell-file-name): Don't prompt before the actual prompt.
(diff-mode): Don't prompt in add-log-buffer-file-name-function.
(diff-find-source-location): Add `noprompt' argument.
(diff-current-defun): Don't prompt.

lisp/ChangeLog
lisp/diff-mode.el

index 9f7f6259b15e9276b8d98d6f8f154e019fde3fc4..4bbc8597270d74c13960211878ede000522cb088 100644 (file)
@@ -1,8 +1,17 @@
+2008-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * diff-mode.el (diff-find-file-name): Rename `batch' to `noprompt' and
+       be more honest when we don't know.
+       (diff-tell-file-name): Don't prompt before the actual prompt.
+       (diff-mode): Don't prompt in add-log-buffer-file-name-function.
+       (diff-find-source-location): Add `noprompt' argument.
+       (diff-current-defun): Don't prompt.
+
 2008-09-14  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 
        * proced.el (proced-mark-face, proced-marked-face)
-       (proced-sort-header-face): Removed.
-       (proced-font-lock-keywords): Simplified.
+       (proced-sort-header-face): Remove.
+       (proced-font-lock-keywords): Simplify.
        (proced-format): Use face proced-sort-header.
        (proced-format-interactive, proced-sort-interactive)
        (proced-filter-interactive): Only call proced-update if the scheme
@@ -12,8 +21,8 @@
 2008-09-14  Martin Rudalics  <rudalics@gmx.at>
 
        * add-log.el (change-log-find-window): New variable.
-       (change-log-goto-source-1, change-log-goto-source): Set
-       change-log-find-window to window displaying source.
+       (change-log-goto-source-1, change-log-goto-source):
+       Set change-log-find-window to window displaying source.
        (change-log-next-error): Select window specified by
        change-log-find-window.
 
 
        * proced.el (proced-sort-header): New face.
        (proced-sort-header-face): New variable.
-       (proced-format): Allow format value nil.  Use
-       proced-sort-header-face for header of sort column.
+       (proced-format): Allow format value nil.
+       Use proced-sort-header-face for header of sort column.
        (proced-format-args): New function.
        (proced-grammar-alist, proced-timer-flag, proced-process-alist)
        (proced-header-help-echo, proced-field-help-echo, proced-timer)
        (proced-toggle-timer-flag, proced, proced-mode): Doc fix.
-       (proced-refine): Renamed from proced-filter-attribute.  Doc fix.
+       (proced-refine): Rename from proced-filter-attribute.  Doc fix.
        (proced-sort-header): Bind also to mouse-1.
        (proced-move-to-goal-column): Return position of point.
        (proced-filter-interactive): Always revert listing.
 
 2008-09-04  Juanma Barranquero  <lekktu@gmail.com>
 
-       * net/tramp-cache.el (tramp-flush-file-function): Fix typo in docstring.
+       * net/tramp-cache.el (tramp-flush-file-function): Fix docstring typo.
        (tramp-parse-connection-properties): Reflow docstring.
 
 2008-09-04  Kim F. Storm  <storm@cua.dk>
 
 2008-09-01  Chong Yidong  <cyd@stupidchicken.com>
 
-       * minibuffer.el (completion-pcm--pattern->regex): When
-       completion-ignore-case is non-nil, generate a regexp that ignores
-       case.
+       * minibuffer.el (completion-pcm--pattern->regex):
+       When completion-ignore-case is non-nil, generate a regexp that
+       ignores case.
 
        * window.el (recenter-top-bottom): Doc fix.
 
 2008-09-01  Martin Rudalics  <rudalics@gmx.at>
 
        * help-fns.el (describe-simplify-lib-file-name)
-       (find-source-lisp-file): Removed.
+       (find-source-lisp-file): Remove.
        (find-lisp-object-file-name): New function giving preference to
        files found via load-path instead of loaddefs.el.
        (describe-function-1): Use new function instead of the removed
 
        * international/mule-diag.el (font-show-log): Fix previous change.
 
-       * international/mule-cmds.el (set-language-environment): Don't
-       overwrite current-iso639-language if the current language
+       * international/mule-cmds.el (set-language-environment):
+       Don't overwrite current-iso639-language if the current language
        environment doesn't provide that data.
        (set-locale-environment): Set current-iso639-language from the
        locale name.
        These changes are to adjust the automatic composition for the new
        implementation (avoid using text property).
 
-       * composite.el (composition-function-table): Declaration moved to
+       * composite.el (composition-function-table): Move declaration to
        composite.c.
        (terminal-composition-base-character-p): Delete it.
        (terminal-composition-function): Delete it.
        (tamil-composable-pattern, kannada-composable-pattern)
        (malayalam-composable-pattern): New variables.
 
-       * international/characters.el (unicode-category-table): Setup
-       unicode-category-table.
+       * international/characters.el (unicode-category-table):
+       Setup unicode-category-table.
 
        * international/fontset.el (setup-default-fontset): Prepend
        iso10646-1 fonts to the fallback font groups instead of appending.
 
 2008-08-27  Tomas Abrahamsson  <tab@lysator.liu.se>
 
-       * textmodes/artist.el (artist-mode-init): Added comment on the
+       * textmodes/artist.el (artist-mode-init): Add comment on the
        setting up of the `artist-replacement-table' array.
        (artist-get-replacement-char): New defsubst.
        (artist-get-char-at-xy-conv, artist-replace-char)
        accessing `artist-replacement-table' directly.
        Reported by RubĂ©n Berenguel <ruben@maia.ub.es>.
 
-       (artist-mt): Fixed structures for cut and copy operations.
+       (artist-mt): Fix structures for cut and copy operations.
 
 2008-08-27  Chong Yidong  <cyd@stupidchicken.com>
 
        (newsticker-treeview-treewindow-width): New.
        (newsticker-treeview-listwindow-height): New.
        (newsticker-treeview-browse-url-item): New.
-       (newsticker-treeview-mode-map): Added
-       newsticker-treeview-browse-url-item.
-       (newsticker--treeview-window-init): Use
-       newsticker-treeview-treewindow-width and
+       (newsticker-treeview-mode-map):
+       Add newsticker-treeview-browse-url-item.
+       (newsticker--treeview-window-init):
+       Use newsticker-treeview-treewindow-width and
        newsticker-treeview-listwindow-height.
 
        * net/newst-reader.el (newsticker-browse-url-item): New.
        keys we will be remapping via local-function-key-map.
        (msdos-setup-keyboard): New function.
 
-       * term/pc-win.el (msdos-create-frame-with-faces): Renamed from
+       * term/pc-win.el (msdos-create-frame-with-faces): Rename from
        make-msdos-frame.
        (terminal-init-internal): New function, errors out if called.
        (msdos-initialize-window-system): New function.
 
 2008-08-21  Chong Yidong  <cyd@stupidchicken.com>
 
-       * minibuffer.el (completion--try-word-completion): Disable
-       partial-completion when considering the addition of a space or
-       hyphen.
+       * minibuffer.el (completion--try-word-completion):
+       Disable partial-completion when considering the addition of a space
+       or hyphen.
 
 2008-08-21  John Paul Wallington  <jpw@pobox.com>
 
 
 2008-08-18  Chong Yidong  <cyd@stupidchicken.com>
 
-       * emulation/edt.el (edt-default-emulation-setup): Share
-       global-buffers-menu-map with the emulated global map.
+       * emulation/edt.el (edt-default-emulation-setup):
+       Share global-buffers-menu-map with the emulated global map.
 
 2008-08-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
 
        (proced-log-buffer): New variable.
        (proced-mark-all, proced-unmark-all, proced-do-mark-al): Operate on
        region if transient-mark-mode is turned on and the region is active.
-       (proced-omit-processes): Renamed from proced-hide-processes to
+       (proced-omit-processes): Rename from proced-hide-processes to
        avoid key clash with describe-mode (bound to h).  Search for
        marked processes starting from point-min.
-       (proced-header-space): Removed.
+       (proced-header-space): Remove.
        (proced-send-signal): Handle errors.  Operate on current process
        if no process is marked.
        (proced-why): New command.
 
 2008-08-13  Glenn Morris  <rgm@gnu.org>
 
-       * eshell/esh-cmd.el (eshell/which): Handle the case where no description
-       is found.
+       * eshell/esh-cmd.el (eshell/which): Handle the case where no
+       description is found.
 
 2008-08-12  Alan Mackenzie  <acm@muc.de>
 
 
 2008-08-11  Chong Yidong  <cyd@stupidchicken.com>
 
-       * progmodes/cc-defs.el (c-emacs-features): Check
-       beginning-of-defun-raw instead of beginning-of-defun, and avoid
+       * progmodes/cc-defs.el (c-emacs-features):
+       Check beginning-of-defun-raw instead of beginning-of-defun, and avoid
        moving point during the test.
 
        * emacs-lisp/lisp.el (beginning-of-defun): Doc fix.
        * net/xesam.el (xesam-search-engines): Add Debbugs hit fields.
        (xesam-refresh-entry): Add Debbugs handling.  Insert a widget
        "DONE", when all hits are retrieved.
-       (xesam-search): autoload it.
+       (xesam-search): Autoload it.
 
 2008-08-11  John Paul Wallington  <jpw@pobox.com>
 
        Extend docstring.  Adapt implementation according to new
        `dbus-event' layout.
        (dbus-event-service-name, dbus-event-path-name)
-       (dbus-event-interface-name, dbus-event-member-name): Adapt
-       implementation according to new `dbus-event' layout.
+       (dbus-event-interface-name, dbus-event-member-name):
+       Adapt implementation according to new `dbus-event' layout.
        (dbus-set-property): Correct `dbus-introspect-get-attribute' call.
 
        * net/xesam.el (xesam-type, xesam-query, xesam-xml-string): New defvar.
 
        * mb-depth.el: Unify all names under one common name prefix
        `minibuffer-depth-'.
-       (minibuffer-depth-indicator-function): Renamed from
+       (minibuffer-depth-indicator-function): Rename from
        `minibuf-depth-indicator-function'.
-       (minibuffer-depth-overlay): Renamed from
+       (minibuffer-depth-overlay): Rename from
        `minibuf-depth-overlay'.
-       (minibuffer-depth-setup): Renamed from
+       (minibuffer-depth-setup): Rename from
        `minibuf-depth-setup-minibuffer'.
-       (minibuffer-depth-indicate-mode): Renamed from
+       (minibuffer-depth-indicate-mode): Rename from
        `minibuffer-indicate-depth-mode'.
 
 2008-07-31  Juri Linkov  <juri@jurta.org>
index a32047e70f7413faed60d20e64efb607ae474428..b711b0635d67f53c2b53b258a20c2a5c63a7cd62 100644 (file)
@@ -723,7 +723,7 @@ If the OLD prefix arg is passed, tell the file NAME of the old file."
          (fs (diff-hunk-file-names current-prefix-arg)))
      (unless fs (error "No file name to look for"))
      (list old (read-file-name (format "File for %s: " (car fs))
-                              nil (diff-find-file-name old) t))))
+                              nil (diff-find-file-name old 'noprompt) t))))
   (let ((fs (diff-hunk-file-names old)))
     (unless fs (error "No file name to look for"))
     (push (cons fs name) diff-remembered-files-alist)))
@@ -756,11 +756,10 @@ If the OLD prefix arg is passed, tell the file NAME of the old file."
               (list (if old (match-string 2) (match-string 4))
                     (if old (match-string 4) (match-string 2)))))))))
 
-(defun diff-find-file-name (&optional old batch prefix)
+(defun diff-find-file-name (&optional old noprompt prefix)
   "Return the file corresponding to the current patch.
 Non-nil OLD means that we want the old file.
-Non-nil BATCH means to prefer returning an incorrect answer than to prompt
-the user.
+Non-nil NOPROMPT means to prefer returning nil than to prompt the user.
 PREFIX is only used internally: don't use it."
   (unless (equal diff-remembered-defdir default-directory)
     ;; Flush diff-remembered-files-alist if the default-directory is changed.
@@ -801,16 +800,15 @@ PREFIX is only used internally: don't use it."
            (boundp 'cvs-pcl-cvs-dirchange-re)
            (save-excursion
              (re-search-backward cvs-pcl-cvs-dirchange-re nil t))
-           (diff-find-file-name old batch (match-string 1)))
-       ;; Invent something, if necessary.
-       (when batch
-         (or (car fs) default-directory))
+           (diff-find-file-name old noprompt (match-string 1)))
        ;; if all else fails, ask the user
-       (let ((file (read-file-name (format "Use file %s: " (or (first fs) ""))
-                                  nil (first fs) t (first fs))))
-        (set (make-local-variable 'diff-remembered-files-alist)
-             (cons (cons fs file) diff-remembered-files-alist))
-        file)))))
+       (unless noprompt
+         (let ((file (read-file-name (format "Use file %s: "
+                                             (or (first fs) ""))
+                                     nil (first fs) t (first fs))))
+           (set (make-local-variable 'diff-remembered-files-alist)
+                (cons (cons fs file) diff-remembered-files-alist))
+           file))))))
 
 
 (defun diff-ediff-patch ()
@@ -1286,7 +1284,7 @@ a diff with \\[diff-reverse-direction].
   (set (make-local-variable 'add-log-current-defun-function)
        'diff-current-defun)
   (set (make-local-variable 'add-log-buffer-file-name-function)
-       'diff-find-file-name))
+       (lambda () (diff-find-file-name nil 'noprompt))))
 
 ;;;###autoload
 (define-minor-mode diff-minor-mode
@@ -1547,7 +1545,7 @@ Whitespace differences are ignored."
 
 (defsubst diff-xor (a b) (if a (if (not b) a) b))
 
-(defun diff-find-source-location (&optional other-file reverse)
+(defun diff-find-source-location (&optional other-file reverse noprompt)
   "Find out (BUF LINE-OFFSET POS SRC DST SWITCHED).
 BUF is the buffer corresponding to the source file.
 LINE-OFFSET is the offset between the expected and actual positions
@@ -1555,7 +1553,8 @@ LINE-OFFSET is the offset between the expected and actual positions
 POS is a pair (BEG . END) indicating the position of the text in the buffer.
 SRC and DST are the two variants of text as returned by `diff-hunk-text'.
   SRC is the variant that was found in the buffer.
-SWITCHED is non-nil if the patch is already applied."
+SWITCHED is non-nil if the patch is already applied.
+NOPROMPT, if non-nil, means not to prompt the user."
   (save-excursion
     (let* ((other (diff-xor other-file diff-jump-to-old-file))
           (char-offset (- (point) (progn (diff-beginning-of-hunk 'try-harder)
@@ -1565,8 +1564,8 @@ SWITCHED is non-nil if the patch is already applied."
            ;; (e.g. because an empty line truncates the hunk mid-course),
            ;; leading to potentially nasty surprises for the user.
            (_ (diff-sanity-check-hunk))
-          (hunk (buffer-substring (point)
-                                  (save-excursion (diff-end-of-hunk) (point))))
+          (hunk (buffer-substring
+                  (point) (save-excursion (diff-end-of-hunk) (point))))
           (old (diff-hunk-text hunk reverse char-offset))
           (new (diff-hunk-text hunk (not reverse) char-offset))
           ;; Find the location specification.
@@ -1578,7 +1577,8 @@ SWITCHED is non-nil if the patch is already applied."
                                 diff-context-mid-hunk-header-re nil t)
                         (error "Can't find the hunk separator"))
                       (match-string 1)))))
-          (file (or (diff-find-file-name other) (error "Can't find the file")))
+          (file (or (diff-find-file-name other noprompt)
+                     (error "Can't find the file")))
           (buf (find-file-noselect file)))
       ;; Update the user preference if he so wished.
       (when (> (prefix-numeric-value other-file) 8)
@@ -1718,23 +1718,27 @@ For use in `add-log-current-defun-function'."
     (when (looking-at diff-hunk-header-re)
       (forward-line 1)
       (re-search-forward "^[^ ]" nil t))
-    (destructuring-bind (buf line-offset pos src dst &optional switched)
-       (diff-find-source-location)
-      (beginning-of-line)
-      (or (when (memq (char-after) '(?< ?-))
-           ;; Cursor is pointing at removed text.  This could be a removed
-           ;; function, in which case, going to the source buffer will
-           ;; not help since the function is now removed.  Instead,
-           ;; try to figure out the function name just from the code-fragment.
-           (let ((old (if switched dst src)))
-             (with-temp-buffer
-               (insert (car old))
-               (funcall (buffer-local-value 'major-mode buf))
-               (goto-char (+ (point-min) (cdr old)))
-               (add-log-current-defun))))
-         (with-current-buffer buf
-           (goto-char (+ (car pos) (cdr src)))
-           (add-log-current-defun))))))
+    (destructuring-bind (&optional buf line-offset pos src dst switched)
+        ;; Use `noprompt' since this is used in which-func-mode and such.
+       (ignore-errors                ;Signals errors in place of prompting.
+          (diff-find-source-location nil nil 'noprompt))
+      (when buf
+        (beginning-of-line)
+        (or (when (memq (char-after) '(?< ?-))
+              ;; Cursor is pointing at removed text.  This could be a removed
+              ;; function, in which case, going to the source buffer will
+              ;; not help since the function is now removed.  Instead,
+              ;; try to figure out the function name just from the
+              ;; code-fragment.
+              (let ((old (if switched dst src)))
+                (with-temp-buffer
+                  (insert (car old))
+                  (funcall (buffer-local-value 'major-mode buf))
+                  (goto-char (+ (point-min) (cdr old)))
+                  (add-log-current-defun))))
+            (with-current-buffer buf
+              (goto-char (+ (car pos) (cdr src)))
+              (add-log-current-defun)))))))
 
 (defun diff-ignore-whitespace-hunk ()
   "Re-diff the current hunk, ignoring whitespace differences."