mirror of
https://github.com/SqrtMinusOne/dotfiles.git
synced 2025-12-10 19:23:03 +03:00
feat(emacs): improve dired-sidebar
This commit is contained in:
parent
36eccc1af1
commit
194aadcd1d
2 changed files with 64 additions and 32 deletions
|
|
@ -2943,7 +2943,7 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
:straight t
|
||||
:defer t)
|
||||
|
||||
(defvar my/weather-last-time nil)
|
||||
(defvar my/weather-last-time 0)
|
||||
(defvar my/weather-value nil)
|
||||
|
||||
(defun my/weather-get ()
|
||||
|
|
@ -3631,15 +3631,15 @@ With ARG, repeats or can move backward if negative."
|
|||
(general-define-key
|
||||
:states '(normal)
|
||||
:keymaps 'dired-mode-map
|
||||
"h" 'dired-up-directory
|
||||
"l" 'dired-find-file
|
||||
"=" 'dired-narrow
|
||||
"-" 'dired-create-empty-file
|
||||
"~" 'vterm
|
||||
"M-r" 'wdired-change-to-wdired-mode
|
||||
"<left>" 'dired-up-directory
|
||||
"<right>" 'dired-find-file
|
||||
"M-<return>" 'dired-open-xdg))
|
||||
"h" #'dired-up-directory
|
||||
"l" #'dired-find-file
|
||||
"=" #'dired-narrow
|
||||
"-" #'my/dired-create-empty-file-subtree
|
||||
"~" #'vterm
|
||||
"M-r" #'wdired-change-to-wdired-mode
|
||||
"<left>" #'dired-up-directory
|
||||
"<right>" #'dired-find-file
|
||||
"M-<return>" #'dired-open-xdg))
|
||||
|
||||
(defun my/dired-home ()
|
||||
"Open dired at $HOME"
|
||||
|
|
@ -3659,6 +3659,12 @@ With ARG, repeats or can move backward if negative."
|
|||
:after (dired)
|
||||
:straight t)
|
||||
|
||||
(defun my/dired-create-empty-file-subtree ()
|
||||
(interactive)
|
||||
(let ((default-directory (dired-current-directory)))
|
||||
(dired-create-empty-file
|
||||
(read-file-name "Create empty file: "))))
|
||||
|
||||
(use-package dired-sidebar
|
||||
:straight t
|
||||
:after (dired)
|
||||
|
|
@ -3666,19 +3672,29 @@ With ARG, repeats or can move backward if negative."
|
|||
:init
|
||||
(general-define-key
|
||||
:keymaps '(normal override global)
|
||||
"C-n" 'dired-sidebar-toggle-sidebar)
|
||||
"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)))
|
||||
: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)
|
||||
(setq-local dired-subtree-use-backgrounds nil))
|
||||
(setq-local dired-subtree-use-backgrounds nil)
|
||||
(setq-local window-size-fixed nil))
|
||||
(general-define-key
|
||||
:keymaps 'dired-sidebar-mode-map
|
||||
:states '(normal emacs)
|
||||
"l" 'dired-sidebar-find-file
|
||||
"h" 'dired-sidebar-up-directory
|
||||
"=" 'dired-narrow)
|
||||
(add-hook 'dired-sidebar-mode-hook #'my/dired-sidebar-setup))
|
||||
"l" #'dired-sidebar-find-file
|
||||
"h" #'dired-sidebar-up-directory
|
||||
"=" #'dired-narrow)
|
||||
(add-hook 'dired-sidebar-mode-hook #'my/dired-sidebar-setup)
|
||||
(advice-add #'dired-create-empty-file :after 'dired-sidebar-refresh-buffer))
|
||||
|
||||
(use-package dired-recent
|
||||
:straight t
|
||||
|
|
|
|||
48
Emacs.org
48
Emacs.org
|
|
@ -4130,7 +4130,7 @@ Also, I want to add some extra information to the journal. Here's a functionalit
|
|||
:straight t
|
||||
:defer t)
|
||||
|
||||
(defvar my/weather-last-time nil)
|
||||
(defvar my/weather-last-time 0)
|
||||
(defvar my/weather-value nil)
|
||||
|
||||
(defun my/weather-get ()
|
||||
|
|
@ -5171,15 +5171,15 @@ My config mostly follows ranger's and vifm's keybindings which I'm used to.
|
|||
(general-define-key
|
||||
:states '(normal)
|
||||
:keymaps 'dired-mode-map
|
||||
"h" 'dired-up-directory
|
||||
"l" 'dired-find-file
|
||||
"=" 'dired-narrow
|
||||
"-" 'dired-create-empty-file
|
||||
"~" 'vterm
|
||||
"M-r" 'wdired-change-to-wdired-mode
|
||||
"<left>" 'dired-up-directory
|
||||
"<right>" 'dired-find-file
|
||||
"M-<return>" 'dired-open-xdg))
|
||||
"h" #'dired-up-directory
|
||||
"l" #'dired-find-file
|
||||
"=" #'dired-narrow
|
||||
"-" #'my/dired-create-empty-file-subtree
|
||||
"~" #'vterm
|
||||
"M-r" #'wdired-change-to-wdired-mode
|
||||
"<left>" #'dired-up-directory
|
||||
"<right>" #'dired-find-file
|
||||
"M-<return>" #'dired-open-xdg))
|
||||
|
||||
(defun my/dired-home ()
|
||||
"Open dired at $HOME"
|
||||
|
|
@ -5205,6 +5205,12 @@ I used to use [[https://www.emacswiki.org/emacs/DiredPlus][dired+]], which provi
|
|||
(use-package dired-subtree
|
||||
:after (dired)
|
||||
:straight t)
|
||||
|
||||
(defun my/dired-create-empty-file-subtree ()
|
||||
(interactive)
|
||||
(let ((default-directory (dired-current-directory)))
|
||||
(dired-create-empty-file
|
||||
(read-file-name "Create empty file: "))))
|
||||
#+end_src
|
||||
|
||||
[[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.
|
||||
|
|
@ -5216,19 +5222,29 @@ I used to use [[https://www.emacswiki.org/emacs/DiredPlus][dired+]], which provi
|
|||
:init
|
||||
(general-define-key
|
||||
:keymaps '(normal override global)
|
||||
"C-n" 'dired-sidebar-toggle-sidebar)
|
||||
"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)))
|
||||
: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)
|
||||
(setq-local dired-subtree-use-backgrounds nil))
|
||||
(setq-local dired-subtree-use-backgrounds nil)
|
||||
(setq-local window-size-fixed nil))
|
||||
(general-define-key
|
||||
:keymaps 'dired-sidebar-mode-map
|
||||
:states '(normal emacs)
|
||||
"l" 'dired-sidebar-find-file
|
||||
"h" 'dired-sidebar-up-directory
|
||||
"=" 'dired-narrow)
|
||||
(add-hook 'dired-sidebar-mode-hook #'my/dired-sidebar-setup))
|
||||
"l" #'dired-sidebar-find-file
|
||||
"h" #'dired-sidebar-up-directory
|
||||
"=" #'dired-narrow)
|
||||
(add-hook 'dired-sidebar-mode-hook #'my/dired-sidebar-setup)
|
||||
(advice-add #'dired-create-empty-file :after 'dired-sidebar-refresh-buffer))
|
||||
#+end_src
|
||||
|
||||
[[https://github.com/vifon/dired-recent.el][dired-recent.el]] adds history to dired.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue