diff options
| author | Blake Romero <blake@blkrom.com> | 2025-07-10 12:51:52 +0100 |
|---|---|---|
| committer | Blake Romero <blake@blkrom.com> | 2025-07-10 12:51:52 +0100 |
| commit | f4dfc6728c290ac140e4a3c17c595772e9a0d7d6 (patch) | |
| tree | e36ed0aa9b4b28a001c97032ee252cf6aadfccee | |
| parent | f544bed6f3ec2d3d46ee139ac6871a516d7ec3a7 (diff) | |
Refactor dired shred command and add commentary
| -rw-r--r-- | emacs-config.org | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/emacs-config.org b/emacs-config.org index 6302cc0..113de33 100644 --- a/emacs-config.org +++ b/emacs-config.org @@ -286,25 +286,28 @@ Auto enable omit mode on Dired startup. (toggle-truncate-lines 1))) #+end_src +Add shred function. #+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 (executable-find "shred") + (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 (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))) + (error "Aborting shred procedure; \"%s\" is not a file!" file))) + (dired-get-marked-files))) + (error "Shred command not found!")) #+end_src +Add additional dired keybindings. #+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 +Allow changing file permissions when in a writable dired buffer. #+begin_src elisp :tangle no :noweb-ref dired-settings (with-eval-after-load 'wdired (setq-default wdired-allow-to-change-permissions t)) |
