From 5608ba723631fec97894652bd07c96934016b3cc Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sat, 23 Nov 2019 01:26:17 -0500 Subject: [PATCH] emacs/dired: disable dired-git-info-mode in wdired-mode And refactor ranger/dired keybind for dired-git-info-mode (#2106). --- modules/emacs/dired/config.el | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/modules/emacs/dired/config.el b/modules/emacs/dired/config.el index 099d35bb8..e7782e820 100755 --- a/modules/emacs/dired/config.el +++ b/modules/emacs/dired/config.el @@ -182,8 +182,20 @@ we have to clean it up ourselves." :init (add-hook 'dired-after-readin-hook '+dired-enable-git-info-h) :config - (if (featurep! +ranger) - (map! :map ranger-mode-map - :ng ")" #'dired-git-info-mode) - (map! :map dired-mode-map - :ng ")" #'dired-git-info-mode))) + (map! :map (dired-mode-map ranger-mode-map) + :ng ")" #'dired-git-info-mode) + (after! wdired + ;; Temporarily disable `dired-git-info-mode' when entering wdired, due to + ;; reported incompatibilities. + (defvar +dired--git-info-p nil) + (defadvice! +dired--disable-git-info-a (&rest _) + :before #'wdired-change-to-wdired-mode + (setq +dired--git-info-p dired-git-info-mode) + (when +dired--git-info-p + (dired-git-info-mode -1))) + (defadvice! +dired--reactivate-git-info-a (&rest _) + :after '(wdired-exit + wdired-abort-changes + wdired-finish-edit) + (when +dired--git-info-p + (dired-git-info-mode +1)))))