2009-12-03 178 views
39

當我使用dired mode瀏覽並找到一個我想在Emacs中打開的文件時,dired爲每次查找文件時我訪問的每個目錄打開一個新的緩衝區,每次我選擇一個目錄時輸入,這意味着我可以結了很多的緩衝區,我不想:如何停止emacs dired模式打開如此多的緩衝區?

. * newer     0 Fundamental  c:/work/stackoverflow/batch/mydir/newer 
% mydir     302 Dired by name  c:/work/stackoverflow/batch/mydir/ 
% batch     616 Dired by name  c:/work/stackoverflow/batch/ 
% stackoverflow   1017 Dired by name  c:/work/stackoverflow/ 
% work     2545 Dired by name  c:/work/ 
    * *scratch*    190 Lisp Interaction 
% *Completions*   162 Completion List 
    * *Messages*   2163 Fundamental 

有沒有什麼辦法讓dired再使用單一的緩衝區?我嘗試M-x customize-groupdired,但沒有看到任何有希望的地方。

另外,沒有任何人有一個宏關閉所有打開的dired緩衝區?

回答

46

使用一個dired-find-alternate-file),而不是輸入

此外,請參閱此頁:

http://www.emacswiki.org/emacs/DiredReuseDirectoryBuffer

+1

正是我想要的。如果用'a'打開文件,甚至一起擺脫直接緩衝區! –

+2

如何返回父目錄?我使用^來上一個目錄,但這樣做會創建一個新的直接緩衝區。 – avendael

+1

@avendael參見[DiredReuseDirectoryBuffer wiki頁面](http://www.emacswiki。org/emacs/DiredReuseDirectoryBuffer)解決方案。 – mgalgs

11

當在dired中瀏覽而不是按回車鍵查看目錄時,使用i然後它將該目錄添加到當前緩衝區。

+0

+1這有幫助,但我不確定我喜歡在一個緩衝區中有很多目錄。 –

+1

我喜歡這個把戲! – swdev

+1

+1,並且在'i'之後打'DWIM'。 – assem

-1

dired-X允許這 - 做的Mx定製組dired-X,並設置 'Dired找到子目錄' 對

+1

試過這個,它似乎不工作。 –

+0

我認爲這有些不同。 –

7

我從來沒有設法切換-dired找到的文件重用-DIR工作RELI巧妙 - 我還是會打開各種各樣的直接緩衝區,我從來不知道如何。

最近我發現dired單(http://www.emacswiki.org/cgi-bin/wiki/dired-single.el),這似乎更好地爲我工作。如果你希望它保證一個單獨的dired緩衝區,並且還有一個很好的命令dired-single-magic-buffer,如果你有一個緩衝區,它會帶你到開放的緩衝區緩衝區,如果你不需要的話打開一個緩衝區。

還有一些其他的選擇,如果它不是多dired緩衝區本身會激怒這麼多,因爲它們污染你的緩衝區列表的方式。例如,elscreen.el有一個dired插件,可以將dired緩衝區保存在其自己的選項卡中,而優秀的ibuffer模式允許您在列出緩衝區時將dired緩衝區組合在一起。

希望有幫助!

西蒙

相關問題