config: restore dirvish (issue is Doom/Evil, not dirvish)

This commit is contained in:
2026-02-28 17:34:09 +01:00
parent 0996157b34
commit 83c3c09858
2 changed files with 28 additions and 11 deletions

View File

@@ -902,17 +902,34 @@ Skip for beamer exports — beamer uses adjustbox on plain tabular."
"RET" #'dired-find-alternate-file
"^" #'dired-up-directory))
;; Plain dired (dirvish disabled — VoiceOver compatibility)
(after! dired
;; Hide details by default, toggle with (
(setq dired-hide-details-hide-symlink-targets nil
dired-listing-switches "-alh --group-directories-first"
dired-dwim-target t
dired-recursive-copies 'always
dired-recursive-deletes 'top)
(map! :map dired-mode-map
;; Dirvish — modern dired replacement
(use-package! dirvish
:init (dirvish-override-dired-mode)
:config
(setq dirvish-hide-details t
dirvish-mode-line-format '(:left (sort symlink) :right (omit yank index))
dirvish-attributes '(vc-state subtree-state nerd-icons collapse git-msg)
dirvish-side-width 35)
(defun my/dirvish-toggle-details ()
"Toggle file-time and file-size dirvish attributes."
(interactive)
(if (memq 'file-size dirvish-attributes)
(setq-local dirvish-attributes
(seq-remove (lambda (a) (memq a '(file-time file-size)))
dirvish-attributes))
(setq-local dirvish-attributes
(append dirvish-attributes '(file-time file-size))))
(revert-buffer))
(map! :map dirvish-mode-map
:n "D" #'my/dirvish-toggle-details
:n "q" #'dirvish-quit
:n "h" #'dired-up-directory
:n "l" #'dired-find-file))
:n "l" #'dired-find-file
:n "s" #'dirvish-quicksort
:n "S" #'dirvish-setup-menu
:n "TAB" #'dirvish-subtree-toggle
:n "M-f" #'dirvish-history-go-forward
:n "M-b" #'dirvish-history-go-backward))
;;; ============================================================