[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 6b4b13e: Preserve point in Dired windows under 'dir
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] master 6b4b13e: Preserve point in Dired windows under 'dired-auto-revert-buffer' |
Date: |
Sat, 10 Jun 2017 04:23:55 -0400 (EDT) |
branch: master
commit 6b4b13eb3868e861df8e52e491214376134baf63
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>
Preserve point in Dired windows under 'dired-auto-revert-buffer'
* lisp/dired.el (dired-find-file): When dired-auto-revert-buffer
is non-nil, bind switch-to-buffer-preserve-window-point to nil
while calling find-file. (Bug#27243)
---
lisp/dired.el | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/lisp/dired.el b/lisp/dired.el
index 8396652..909735a 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -2126,7 +2126,16 @@ directory in another window."
(interactive)
;; Bind `find-file-run-dired' so that the command works on directories
;; too, independent of the user's setting.
- (let ((find-file-run-dired t))
+ (let ((find-file-run-dired t)
+ ;; This binding prevents problems with preserving point in
+ ;; windows displaying Dired buffers, because reverting a Dired
+ ;; buffer empties it, which changes the places where the
+ ;; markers used by switch-to-buffer-preserve-window-point
+ ;; point.
+ (switch-to-buffer-preserve-window-point
+ (if dired-auto-revert-buffer
+ nil
+ switch-to-buffer-preserve-window-point)))
(find-file (dired-get-file-for-visit))))
(defun dired-find-alternate-file ()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 6b4b13e: Preserve point in Dired windows under 'dired-auto-revert-buffer',
Eli Zaretskii <=