help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Keep dired from creating new buffers.


From: Yoni Rabkin
Subject: Re: Keep dired from creating new buffers.
Date: Fri, 12 Dec 2003 21:44:39 +0200
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux)

Copied verbatim from
http://www.emacswiki.org/cgi-bin/wiki.pl/DiredMode:

Here's the code to make dired use only one buffer:

 (eval-after-load "dired"
  '(progn
     (defadvice dired-advertised-find-file (around dired-subst-directory 
activate)
       "Replace current buffer if file is a directory."
       (interactive)
       (let* ((orig (current-buffer))
              (filename (dired-get-filename))
              (bye-p (file-directory-p filename)))
         ad-do-it
         (when (and bye-p (not (string-match "[/\\\\]\\.$" filename)))
           (kill-buffer orig))))))

And here is another way for achieving this:

    ;; we want dired not not make always a new buffer if visiting a directory
    ;; but using only one dired buffer for all directories.
    (defadvice dired-advertised-find-file (around dired-subst-directory 
activate)
      "Replace current buffer if file is a directory."
      (interactive)
      (let ((orig (current-buffer))
            (filename (dired-get-filename)))
        ad-do-it
        (when (and (file-directory-p filename)
                   (not (eq (current-buffer) orig)))
          (kill-buffer orig))))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]