Emacs dired使用相同的缓冲区

9

我在.emacs文件中使用以下代码:

(require 'dired+)
(toggle-diredp-find-file-reuse-dir 1)

因此,它不会为我访问的每个目录创建缓冲区。然后我决定添加一些人机工程学:

(add-hook 'dired-mode-hook
          (lambda ()
            (define-key dired-mode-map (kbd "C-<up>") 'dired-up-directory)))

当我点击 Ctrl-<up> 时,它会移动到父目录。但它会在一个新的缓冲区中打开父目录。
如何使它在同一缓冲区中打开?

顺便提一下,有一个错别字,函数应该是toggle-diredp-find-file-reuse-dir。 - PuercoPop
@PuercoPop GNU Emacs 24.1.1 (i386-mingw-nt5.1.2600)于2012年6月10日在MARVIN上发布。这是该函数的帮助:toggle-dired-find-file-reuse-dir是“dired+.el”中一个交互式编译的Lisp函数。(toggle-dired-find-file-reuse-dir FORCE-P)切换Dired“find-file”命令是否使用备用文件。非nil前缀arg FORCE-P => IFF FORCE-P >= 0使用备用文件。 - user4035
2
注意/更新:自2011年以来,该命令的名称为toggle-dired-find-file-reuse-dir,其中diredp中有一个**p**。没有不带p的这样的命令。拼写错误(没有p)一直存在一段时间,但在2011/07/01得到了修复。 - Drew
我编辑了帖子并添加了 p。在阅读评论之前,我浪费了很多时间进行剪切和粘贴。 - Martin Serrano
可能是如何停止emacs dired模式打开太多缓冲区?的重复问题。 - lawlist
显示剩余2条评论
1个回答

6

解决方案可以在这里找到:

(add-hook 'dired-mode-hook
 (lambda ()
  (define-key dired-mode-map (kbd "C-<up>")
    (lambda () (interactive) (find-alternate-file "..")))
  ; was dired-up-directory
 ))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接