Commit 84bf6ad8 authored by Juri Linkov's avatar Juri Linkov
Browse files

(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.
parent 202e166d
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 ")")
""))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment