diff --git a/modules/emacs/dired/config.el b/modules/emacs/dired/config.el index 66d8aac7347..e0f22206c8a 100644 --- a/modules/emacs/dired/config.el +++ b/modules/emacs/dired/config.el @@ -73,6 +73,7 @@ Fixes #3939: unsortable dired entries on Windows." (use-package! diff-hl :when (featurep! :ui vc-gutter) + :unless (featurep! +dirvish) :hook (dired-mode-hook . diff-hl-margin-local-mode) :init (unless (featurep! :ui vc-gutter +diff-hl) @@ -138,17 +139,22 @@ we have to clean it up ourselves." (use-package! dirvish - :when (featurep! +dirvish) :defer t - :init (after! dired (dirvish-override-dired-mode)) - :hook (dired-mode . dired-omit-mode) + :when (featurep! +dirvish) + :init (dirvish-override-dired-mode) :config + (when (featurep! :ui tabs) + (after! centaur-tabs + (add-hook! 'dirvish-mode-hook 'centaur-tabs-local-mode))) (setq dirvish-cache-dir (concat doom-cache-dir "dirvish/") dirvish-hide-details nil - dirvish-attributes '(git-msg) - dired-omit-files (concat dired-omit-files "\\|^\\..*$")) + dirvish-attributes '(git-msg vc-state file-size)) + (setq dirvish-mode-line-format + '(:left (sort file-time " " file-size symlink) :right (omit yank index))) (when (featurep! +icons) (push 'all-the-icons dirvish-attributes)) + ;; (when (featurep! ui: tabs) + ;; (add-hook! 'dirvish-mode-hook (centaur-tabs-local-mode))) (map! :map dirvish-mode-map :n "b" #'dirvish-goto-bookmark :n "z" #'dirvish-show-history @@ -156,8 +162,12 @@ we have to clean it up ourselves." :n "F" #'dirvish-toggle-fullscreen :n "l" #'dired-find-file :n "h" #'dired-up-directory + :n "?" #'dirvish-dispatch + :n "q" #'dirvish-quit :localleader - "h" #'dired-omit-mode)) + "h" #'dired-omit-mode) + (global-set-key [remap find-dired] #'dirvish-fd) + (set-popup-rule! "^ \\*Dirvish.*" :ignore t)) (use-package! all-the-icons-dired @@ -185,7 +195,6 @@ we have to clean it up ourselves." (use-package! dired-x - :unless (featurep! +dirvish) :unless (featurep! +ranger) :hook (dired-mode . dired-omit-mode) :config @@ -222,6 +231,7 @@ we have to clean it up ourselves." (use-package! fd-dired :when doom-projectile-fd-binary + :unless (featurep! +dirvish) :defer t :init (global-set-key [remap find-dired] #'fd-dired) diff --git a/modules/emacs/dired/packages.el b/modules/emacs/dired/packages.el index 96dc117e639..9d911a831ae 100644 --- a/modules/emacs/dired/packages.el +++ b/modules/emacs/dired/packages.el @@ -8,7 +8,7 @@ (when (featurep! +ranger) (package! ranger :pin "2498519cb21dcd5791d240607a72a204d1761668")) (when (featurep! +dirvish) - (package! dirvish :pin "73dcaa404da9ab84d25f2919e6e3af4b1f8e7f37")) + (package! dirvish :pin "86b7002d3b035b1a314775db5ff1946e29bd33ef")) (when (and (featurep! +icons) (not (featurep! +dirvish))) (package! all-the-icons-dired :pin "5e9b097f9950cc9f86de922b07903a4e5fefc733"))