如何在Emacs中查看打开文件列表?或者浏览Emacs中的目录?

时间:2008-09-15 17:12:50

标签: emacs

大多数文本编辑器都有一个导航窗格,可让您查看当前打开的所有文件。或者是一个允许您浏览文件目录的窗格。

如何在Emacs中执行此操作?

14 个答案:

答案 0 :(得分:13)

尝试 Ctrl-x ,然后按 Ctrl-b (在Emacs术语 C-x C-b 中)列出缓冲区。

答案 1 :(得分:5)

C-x C-b 将打开*Buffer List*缓冲区。在该缓冲区中,您可以使用常用键 Cp Cn 向上箭头向下箭头进行导航等等。

浏览目录就像编辑文件一样简单。只需打开目录而不是文件。在我的Linux机器上, C-x C-f / tmp ENTER 打开一个目录,而 C-x C-f / tmp / myfile ENTER 打开一个文件。

答案 2 :(得分:3)

C-x d 访问目录编辑器。如果你给它一个目录而不是一个文件, C-x C-f 也会这样做。

还有ibuffer-mode,它允许您以与Dired非常相似的方式处理您的开放缓冲区:http://www.emacswiki.org/cgi-bin/wiki/IbufferMode

它包含在最新版本的Emacs中,因此您可能无需单独下载:首先尝试 M-x ibuffer

答案 3 :(得分:3)

Mx speedbar speedbar website)会弹出一个emacs框架,根据你所在的缓冲区列出当前目录的内容。框架很小,不在这样你就可以在编辑文件时随时浏览它。它还可以使用变量speedbar-supported-extension-expressions根据文件类型过滤此显示。要查看所有快速栏选项,请键入 M-x customize-group RET speedbar RET

答案 4 :(得分:2)

C-x b TAB 将为您提供所有打开缓冲区的自动完成功能。或者,如果您使用的是窗口版本,请单击Buffers菜单项(不确定是否有相应的终端)。

编辑:同时 Cx Cf 将允许您打开文件,您可以使用 TAB 进行自动完成,然后再使用 TAB 查看文件当前目录中的/目录(假设第一个选项卡没有自动完成某些内容)。

答案 5 :(得分:1)

M-x shell 打开一个shell,您可以在其中浏览目录

答案 6 :(得分:1)

如果您有兴趣查看目录,源,方法等树状结构,请尝试使用emacs代码浏览器http://ecb.sourceforge.net/

答案 7 :(得分:1)

使用diredit浏览目录时,请考虑使用 a 而不是 RET 来更改目录。

否则,每个新目录都会在新缓冲区中访问,这会很快混乱缓冲区列表。

答案 8 :(得分:1)

如果您只是在查找文件而不是其他任何缓冲区,请查看file-history.el

https://github.com/akicho8/file-history

答案 9 :(得分:1)

我刚刚发现了neotree包,它显示了根目录下所有文件的树。访问neotree缓冲区中的文件会打开它们,如果已经打开,则会切换到缓冲区。

neotree可以通过

安装
M-x package-install Ret neotree

或来自其gitbub存储库。

答案 10 :(得分:1)

您可以尝试sidebar

答案 11 :(得分:0)

此外,如果要删除打开缓冲区列表,请键入 C-x 1

答案 12 :(得分:0)

我经常需要在“当前目录”中找到另一个文件,即。我正在编辑的文件的目录。

要在diredit中快速打开此目录,我使用:

  

C-x C-f C-j

答案 13 :(得分:0)