From fbbd7530c5d2958038239de4558892c2f3afcadd Mon Sep 17 00:00:00 2001 From: Daneel Date: Sat, 28 Feb 2026 17:30:53 +0100 Subject: [PATCH] config: replace dirvish with plain dired Dirvish caused VoiceOver issues. Plain dired with: - hide-details, GNU ls sorting, dwim-target - h/l navigation (vim-style) - recursive copies, top-level delete confirm --- config.el | 40 ++++++++++------------------------------ packages.el | 2 +- 2 files changed, 11 insertions(+), 31 deletions(-) diff --git a/config.el b/config.el index 4a4757f..804e613 100644 --- a/config.el +++ b/config.el @@ -901,37 +901,17 @@ Skip for beamer exports — beamer uses adjustbox on plain tabular." "RET" #'dired-find-alternate-file "^" #'dired-up-directory)) -;; 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)) - ;; Minimal attributes for VoiceOver: no file-time/file-size by - ;; default so screen reader reads only filenames. Toggle full - ;; details with "D" in dirvish buffers. - 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 +;; 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 :n "h" #'dired-up-directory - :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)) + :n "l" #'dired-find-file)) ;;; ============================================================ diff --git a/packages.el b/packages.el index 3c91ca5..7fe59da 100644 --- a/packages.el +++ b/packages.el @@ -118,5 +118,5 @@ (package! calfw) (package! calfw-org) (package! org-roam-ui) -(package! dirvish) +;; (package! dirvish) ; disabled — using plain dired