除了Emacs代码浏览器(ECB)之外,您是否知道Emacs的项目树浏览器?我重视的功能是简单,轻量级和语言不可知.
met*_*mit 18
Projectile + NeoTree是我的选择组合.

Projectile只使用你的版本控制系统来跟踪文件,并且在项目功能中有一个很棒的跳转到文件.

另外,请检查将两者结合在一起的注释.
我刚刚用词搜索"探索" package-list-packages并发现project-explorer.似乎完全适合我今天想要的东西(我不编码,但我抓住了我的Jekyll网站的结构).
钥匙包括:
TAB 用于折叠和展开目录RET或打开文件f.使用C-u前缀,它会很好地提示哪个窗口,甚至从那里允许你决定使用窗口或打开一个新的任何一方(我没有在包代码中找到提示字符串,所以它似乎内置Emacs功能的杠杆很好;实际上它看起来dired甚至).它可以在Melpa和Marmalade上找到.它可以在sabof/project-explorer的 Github上找到.
为方便起见,我包含了网站的图片:

我不使用projectile或helm,但它有一些集成.
以下是我对几个竞争的文件浏览器类型包的想法。请参阅下面每个包上方的注释:
;; Dired itself allows one to do 'i' to insert (display in same buffer) the
;; subdirectory under point and C-u k on subdir header line to remove. However,
;; I have found that dired-subtree-toggle and dired-subtree-remove are a better solution for the removal
;; part. Plus dired-subtree let's you customize colors of subdirs to set them apart
;; visually. However, I set all depths of subdirectories custom faces to be the same as I found it distracting.
(use-package dired-subtree
:ensure t
:bind (:map dired-mode-map ("i" . 'dired-subtree-toggle))
:bind (:map dired-mode-map ("I" . 'dired-subtree-remove)))
;; This works nicely. It provides the parent, '..', directory unlike nav.
(use-package project-explorer
:ensure t
:config
(evil-set-initial-state 'project-explorer-mode 'emacs))
;; This can't go above the directory you started it in. It is nice, but I prefer the flexibility
;; of getting to parent directories in most cases.
(use-package dirtree
:ensure t)
;; Google's file explorer
;; Nice, but doesn't maintain visited nodes in view, preferring instead to offer only
;; the current directory or lower in a side window. No better than ivy which is my main file explorer system.
(use-package nav
:ensure t)
;; This is buggy on Emacs 26.1.
(use-package eproject
:disabled t
:ensure t)
;; speedbar is included with Emacs (since 24.x I believe). It has to use a separate frame, which is
;; inconvenient most of the time. There are better options (above).
;; (use-package speedbar)
;; Buggy; doesn't work on Emacs 26.1 (at least with my config).
(use-package sr-speedbar
:disabled t
:load-path "../lisp")
;; Buggy on Emacs 26.1 (at least with my config). I couldn't even get it to activate.
(use-package ecb
:disabled t
:ensure t)
;; Nice, but similar to ivy which I've already committed to, so not necessary.
(use-package lusty-explorer
:disabled t
:ensure t)
Run Code Online (Sandbox Code Playgroud)
对我来说,ivy 加 dired 就完成了 98% 的工作。ivy、dired 和 dired-subtree 让我完成了 99% 的工作。project-explorer,以及较小程度上的 nav,只是 ivy 加 dired 或 ivy 加 dired 和 dired-subtree 的不错替代品。希望这能为您节省一些时间。