2009-01-15 5 views
1

Je connais M-x dire, mais j'aimerais le personnaliser. Je voudrais appuyer sur une touche (par exemple F2) et obtenir un tampon ouvert. Lorsque je navigue dans la hiérarchie du répertoire, il ne doit pas ouvrir de nouveaux tampons.Comment obtenir l'équivalent de Vim's: Texplore dans Emacs?

Et quand j'ouvre enfin le fichier il ne devrait pas non plus ouvrir un nouveau tampon pour cela (pas strictement nécessaire, mais fortement préféré).

Bien sûr, ce comportement peut être global, c'est-à-dire pour tous les buffers/invocations.

Répondre

0

Voici ce que je finalement utilisé:

(require 'dired) 
(global-set-key [(f2)] 'my-dired) 
(defun my-dired() 
    (interactive) 
    (dired (file-name-directory (buffer-file-name)))) 
(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 :no-error-if-not-filep t))) 
    ad-do-it 
    (when (not (eq (current-buffer) orig)) (kill-buffer orig)))) 
4

Découvrez dired-single, qui fait à peu près ce que vous voulez (sauf ce dernier bit, où il réutilise le tampon dired pour le fichier nouvellement visité).

Caveat Lector: Je l'ai écrit, donc je suis partial pour son utilité.

+0

Aucun biais ici, et je pense que dired-single.el est génial. Je l'utilise depuis un moment et c'est exactement ce dont j'avais besoin quand je l'ai cherché. (Aucune idée de comment il se compare à: Texplore depuis que je n'ai jamais vraiment utilisé vim.) – felideon

1

Je sais que cela est très vieux mais Tout ce que vous avez à faire est d'appuyer sur « a » sur un répertoire ou d'un fichier pour obtenir cette fonctionnalité. C'est déjà là.

Questions connexes