请问dired mode怎么才能让所有的浏览都在一个buffer呢

每次浏览目录都打开新的buffer,buffer list乱乱的。有没有办法始终如一

1 个赞

可以试试 dired-find-alternate-file , 默认快捷键为 a

但是这个函数是默认被禁用的,可以按照提示启用,或者自己照着实现一个重新绑定。

刚试了下,不行阿.每进入一个目录.bufferlist就会多一项.

;; reuse buffer in DIRED

(defadvice dired-find-file (around dired-find-file-single-buffer activate) “Replace current buffer if file is a directory.” (interactive) (let ((orig (current-buffer)) (filename (dired-get-file-for-visit))) ad-do-it (when (and (file-directory-p filename) (not (eq (current-buffer) orig))) (kill-buffer orig))))

可以啊,我就是这么实现的。代码如下:

       ("h" . (lambda()(interactive)(find-alternate-file "..")))
       ("l" . dired-find-alternate-file)