mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-03 11:33:37 +00:00
(dired-diff): Use dired-dwim-target-directory
instead of the file at the mark as default if the file at the mark is the same as the file at point or if dired-dwim-target-directory is not the same as the current directory and the mark is not active.
This commit is contained in:
parent
202e166dea
commit
84bf6ad84e
@ -1,5 +1,10 @@
|
||||
2006-01-17 Juri Linkov <juri@jurta.org>
|
||||
|
||||
* dired-aux.el (dired-diff): Use dired-dwim-target-directory
|
||||
instead of the file at the mark as default if the file at the mark
|
||||
is the same as the file at point or if dired-dwim-target-directory
|
||||
is not the same as the current directory and the mark is not active.
|
||||
|
||||
* log-view.el (log-view-minor-wrap): Use the same logic to get
|
||||
revisions as `log-view-diff'.
|
||||
|
||||
|
@ -53,14 +53,20 @@ FILE defaults to the file at the mark. (That's the mark set by
|
||||
\\[set-mark-command], not by Dired's \\[dired-mark] command.)
|
||||
The prompted-for file is the first file given to `diff'.
|
||||
With prefix arg, prompt for second argument SWITCHES,
|
||||
which is options for `diff'."
|
||||
which is options for `diff'."
|
||||
(interactive
|
||||
(let ((default (if (mark t)
|
||||
(let ((current (dired-get-filename t))
|
||||
(default (if (mark t)
|
||||
(save-excursion (goto-char (mark t))
|
||||
(dired-get-filename t t)))))
|
||||
(if (or (equal default current)
|
||||
(and (not (equal (dired-dwim-target-directory)
|
||||
(dired-current-directory)))
|
||||
(not mark-active)))
|
||||
(setq default nil))
|
||||
(require 'diff)
|
||||
(list (read-file-name (format "Diff %s with%s: "
|
||||
(dired-get-filename t)
|
||||
current
|
||||
(if default
|
||||
(concat " (default " default ")")
|
||||
""))
|
||||
|
Loading…
Reference in New Issue
Block a user