From 1af534fcd24c14cbe65d22301cb85821008210eb Mon Sep 17 00:00:00 2001 From: SqrtMinusOne Date: Mon, 25 Jul 2022 23:34:24 +0300 Subject: [PATCH] fix(emacs): dired-sidebar again --- .emacs.d/init.el | 18 +++++++++++------- Emacs.org | 18 +++++++++++------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/.emacs.d/init.el b/.emacs.d/init.el index ce436e3..04aadf0 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -3665,23 +3665,27 @@ With ARG, repeats or can move backward if negative." (dired-create-empty-file (read-file-name "Create empty file: ")))) +(defun my/dired-sidebar-toggle () + (interactive) + (if (not current-prefix-arg) + (dired-sidebar-toggle-sidebar) + (let ((dired-sidebar-follow-file-at-point-on-toggle-open + current-prefix-arg) + (current-prefix-arg nil)) + (dired-sidebar-toggle-sidebar)))) + (use-package dired-sidebar :straight t :after (dired) :commands (dired-sidebar-toggle-sidebar) :init + (setq dired-sidebar-follow-file-at-point-on-toggle-open nil) (general-define-key :keymaps '(normal override global) - "C-n" `(,(lambda () - (interactive) - (let ((dired-sidebar-follow-file-at-point-on-toggle-open - current-prefix-arg) - (current-prefix-arg nil)) - (dired-sidebar-toggle-sidebar))) + "C-n" `(my/dired-sidebar-toggle :wk "dired-sidebar")) :config (setq dired-sidebar-width 45) - (setq dired-sidebar-follow-file-at-point-on-toggle-open nil) (defun my/dired-sidebar-setup () (toggle-truncate-lines 1) (display-line-numbers-mode -1) diff --git a/Emacs.org b/Emacs.org index c7c43ec..239f2af 100644 --- a/Emacs.org +++ b/Emacs.org @@ -5215,23 +5215,27 @@ I used to use [[https://www.emacswiki.org/emacs/DiredPlus][dired+]], which provi [[https://github.com/jojojames/dired-sidebar][dired-sidebar]] enables opening Dired in sidebar. For me, with dired-subtree this makes dired a better option than Treemacs. #+begin_src emacs-lisp +(defun my/dired-sidebar-toggle () + (interactive) + (if (not current-prefix-arg) + (dired-sidebar-toggle-sidebar) + (let ((dired-sidebar-follow-file-at-point-on-toggle-open + current-prefix-arg) + (current-prefix-arg nil)) + (dired-sidebar-toggle-sidebar)))) + (use-package dired-sidebar :straight t :after (dired) :commands (dired-sidebar-toggle-sidebar) :init + (setq dired-sidebar-follow-file-at-point-on-toggle-open nil) (general-define-key :keymaps '(normal override global) - "C-n" `(,(lambda () - (interactive) - (let ((dired-sidebar-follow-file-at-point-on-toggle-open - current-prefix-arg) - (current-prefix-arg nil)) - (dired-sidebar-toggle-sidebar))) + "C-n" `(my/dired-sidebar-toggle :wk "dired-sidebar")) :config (setq dired-sidebar-width 45) - (setq dired-sidebar-follow-file-at-point-on-toggle-open nil) (defun my/dired-sidebar-setup () (toggle-truncate-lines 1) (display-line-numbers-mode -1)