From dbb4a034a0fe2d9dbd36ca98e1286eb2b99ae324 Mon Sep 17 00:00:00 2001 From: Blake Romero Date: Thu, 10 Jul 2025 02:06:56 +0100 Subject: Add dired settings --- emacs-config.org | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'emacs-config.org') diff --git a/emacs-config.org b/emacs-config.org index 2ffa0a3..f7e36ba 100644 --- a/emacs-config.org +++ b/emacs-config.org @@ -198,6 +198,50 @@ Disable auto-bookmarking org-mode files. (setq-default org-bookmark-names-plist nil)) #+end_src +** Dired +#+begin_src elisp :noweb yes + (with-eval-after-load 'dired + <>) +#+end_src + +Dired settings. +#+begin_src elisp :tangle no :noweb-ref dired-settings + (setq-default + dired-guess-shell-alist-user '(("\\.pdf$" "zathura")) + dired-listing-switched "-AFhlv --group-directories-first") +#+end_src + +Auto enable omit mode on Dired startup. +#+begin_src elisp :tangle no :noweb-ref dired-settings + (add-hook 'dired-mode-hook (lambda () + (dired-omit-mode) + (toggle-truncate-lines 1))) +#+end_src + +#+begin_src elisp :tangle no :noweb-ref dired-settings + (defun +dired-shred-file () + "Shred marked files or a file at point in Dired." + (interactive) + (mapc (lambda (file) "Run the shred shell command on FILE." + (if (executable-find "shred") + (if (file-regular-p file) + (when (yes-or-no-p (format "Shred %s?" file)) + (shell-command (format "shred -u \"%s\"" file))) + (error "Aborting shred procedure; \"%s\" is not a file!" file)) + (error "Shred command not found!"))) + (dired-get-marked-files))) +#+end_src + +#+begin_src elisp :tangle no :noweb-ref dired-settings + (keymap-set dired-mode-map "b" #'dired-up-directory) + (keymap-set dired-mode-map "z" #'+dired-shred-file) +#+end_src + +#+begin_src elisp :tangle no :noweb-ref dired-settings + (with-eval-after-load 'wdired + (setq-default wdired-allow-to-change-permissions t)) +#+end_src + ** Org #+begin_src elisp :noweb yes (with-eval-after-load 'org -- cgit