dired バッファでマークしたファイルに対して ediff を実行する次の関数があります。
(defun mkm/ediff-marked-pair ()
"Run ediff-files on a pair of files marked in dired buffer"
(interactive)
(let ((marked-files (dired-get-marked-files nil)))
(if (not (= (length marked-files) 2))
(message "mark exactly 2 files")
(ediff-files (nth 0 marked-files)
(nth 1 marked-files)))))
同じディレクトリ内のファイルでのみ機能します。別のdiredディレクトリでマークしたファイルで機能させるにはどうすればよいですか?