From b3006ecabb18ed15da0ccadf71f79c4a9088b809 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 26 Aug 2020 19:54:05 -0400 Subject: [PATCH] ui/modeline: update buffer id when renaming files And revert 247ce145b, since I wasn't aware after-set-visited-file-name-hook existed. --- core/autoload/files.el | 6 ++++-- modules/ui/modeline/+light.el | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/core/autoload/files.el b/core/autoload/files.el index 37b1d6c88..1fbb99b9e 100644 --- a/core/autoload/files.el +++ b/core/autoload/files.el @@ -202,7 +202,10 @@ single file or nested compound statement of `and' and `or' statements." (let (toplevels) (dolist (file files) (when (featurep 'vc) - (vc-file-clearprops file)) + (vc-file-clearprops file) + (when-let (buffer (get-file-buffer file)) + (with-current-buffer buffer + (vc-refresh-state)))) (when (featurep 'magit) (when-let (default-directory (magit-toplevel (file-name-directory file))) (cl-pushnew default-directory toplevels))) @@ -283,7 +286,6 @@ If FORCE-P, overwrite the destination file if it exists, without confirmation." (make-directory (file-name-directory new-path) 't) (rename-file old-path new-path (or force-p 1)) (set-visited-file-name new-path t t) - (revert-buffer t t) (doom--update-files old-path new-path) (message "File moved to %S" (abbreviate-file-name new-path)))) diff --git a/modules/ui/modeline/+light.el b/modules/ui/modeline/+light.el index 0eab73319..8860dd376 100644 --- a/modules/ui/modeline/+light.el +++ b/modules/ui/modeline/+light.el @@ -366,6 +366,8 @@ Requires `anzu', also `evil-anzu' if using `evil-mode' for compatibility with focus-in-hook ;; ...or when we change the current project! projectile-after-switch-project-hook + ;; ...when the visited file changes (e.g. it's renamed) + after-set-visited-file-name-hook ;; ...when the underlying file changes after-revert-hook) (defun +modeline--generate-buffer-id-cache-h ()