我正在关注这个 wiki 建议设置 Emacs,以便我可以在 dired 模式下前进和后退而无需创建新的缓冲区。
使用该a
键和(put 'dired-find-alternate-file 'disabled nil)
设置可以让我进入没有新缓冲区的目录。
但是 wiki 中提到的密钥钩子^
对我来说不起作用。转到上一个目录仍然^
会打开新的缓冲区。
以下是我使用的设置.emacs.d/init.el
; dired settings
(require 'dired-x)
(setq dired-omit-files "^\\.?#\\|^\\.$\\|^\\.\\.$\\|^\\.")
(add-hook 'dired-mode-hook (lambda ()
(dired-omit-mode 1)))
(setq dired-listing-switches "-aBhl --group-directories-first")
(put 'dired-find-alternate-file 'disabled nil)
(add-hook 'dired-mode-hook
(lambda ()
(define-key dired-mode-map (kbd "^")
(lambda () (interactive) (find-alternate-file "..")))))
答案1
只需使用迪雷德+。用于C-M-R
切换是否重用 Dired 缓冲区。如果要默认重用,请将其放入您的初始化文件中:
(diredp-make-find-file-keys-reuse-dirs)
这也解决了^
。总之,不需要编写任何代码 - 只需加载迪雷德+。