Trình duyệt thư mục dựa trên cây?


38

Tôi thích chuyển hướng, nhưng đôi khi (đặc biệt là khi quay phim screencasts) tôi muốn xem cấu trúc cây của một thư mục và các con của nó, lệnh la the tree (1). Có một trình duyệt thư mục hướng cây cho Emacs?


Khá chắc chắn ecb có thể làm điều này.
Edgar Aroutiounian

2
@EdgarAroutiounian Nếu đó là trường hợp, tôi khuyên bạn nên đưa ra câu trả lời từ nó :)
Trevoke

Câu trả lời:


23

Ngoài ra, bạn có thể sử dụng dired-cây con từ repo dired-hack .

Ở đây bạn có bản demo và ảnh chụp màn hình ngắn từ thiết lập của tôi, nơi tôi nhấn iđể xem chi tiết thư mục và ;quay lại.:

  (define-key dired-mode-map "i" 'dired-subtree-insert)
  (define-key dired-mode-map ";" 'dired-subtree-remove)

chuyển hướng

PS Tôi cũng biết về direx trông giống như sau direx:


Tôi đã thử chuyển hướng phụ nhưng cấu trúc cây không rõ ràng như tôi đang tìm kiếm. Direx trông hoàn hảo tho, tôi sẽ đi thử nó.
Avdi

Tôi là người này bởi vì gợi ý của Direx có vẻ lý tưởng cho trường hợp sử dụng của tôi về việc đặt một mặt trước trực quan và trung tâm cây thư mục. Tuy nhiên, đó không phải là giảm giá cho những gợi ý tuyệt vời của @ keelerm.
Avdi

Bạn có thể có được chức năng tương đương bằng cách sử dụng một ràng buộc khóa: (định nghĩa khóa dired-mode-map "i" 'dired-subtree-toggle). Tôi thích ánh xạ nó tới "Cc i" mặc dù vì dired cũng không chèn thư mục con bằng cách sử dụng "i".
Joe

22

Có một vài lựa chọn cho việc này.

Bạn có thể kiểm tra Dirtree , dựa trên dired.

Ngoài ra còn có một cổng emacs của NERDTree của vim được gọi là neotree .

Cả hai đều là các gói tuyệt vời, mặc dù tôi có xu hướng ủng hộ neotree vì nó có các ràng buộc thuận tiện để cho phép tôi tạo và xóa các tệp và thư mục. Tôi không tin Dirtree có sự hỗ trợ này, mặc dù tôi có thể sai. Đã được một thời gian kể từ lần cuối tôi sử dụng nó.


Cảm ơn, trong khi direx có vẻ lý tưởng cho nhu cầu trước mắt của tôi, bạn đã nhắc nhở tôi rằng tôi cần dành thời gian cho neotree.
Avdi

9

Bạn có thể gọi diredvới một đối số, tức là. C-u C-x dvà sau khi nhắc thư mục, nó cũng sẽ cho phép bạn sửa đổi các công tắc được chuyển đến ls. Thêm Rdiredsẽ liệt kê đệ quy tất cả các thư mục con, mỗi thư mục trong phần riêng của nó.

Nếu bạn chỉ muốn xem nội dung của một số thư mục con, hãy nhấn ikhi điểm nằm trên tên thư mục.

Bạn cũng có thể sử dụng find-diredlệnh, có hoặc không có công tắc. Thay vì hiển thị các thư mục con trong phần riêng của nó, nó sẽ in đường dẫn đầy đủ của mỗi tệp. Bạn có thể chuyển đổi hiển thị chi tiết tệp (để các đường dẫn dài vừa với màn hình nằm ngang.

Đây là tất cả tích hợp.


7

Bạn đã bao giờ thử Emacs ' M-x speedbarchưa? :-) trước khi cài đặt một số gói mới Tôi sẽ thử một giải pháp sẵn có ...


1
Mạnh mẽ và thêm một upvote cho đề xuất một nội dung.
GergelyPolonkai

4

Ngoài ra còn có ztree . Tôi sử dụng nó khi tôi cần xem cấu trúc thư mục, mặc dù thông thường tôi sử dụng vanilla Dired cho tất cả những thứ khác.


1

Hãy nhìn vào sidebar.el .

Như repo đã nói, nó là một trình thám hiểm tệp có thể tùy chỉnh với tích hợp git, nhưng không chỉ vậy. Bạn cũng có thể lấy danh sách bộ đệm và maildir của mình bằng mu4e.

nhập mô tả hình ảnh ở đây


1

Liệu Treemacs làm việc. Nó cho phép bạn có một cấu trúc xác thực.


Đây là một câu trả lời hoặc một câu hỏi (hai câu hỏi)? Đây là một câu trả lời chỉ có liên kết, nếu đó là một câu trả lời. Như vậy, nó có nguy cơ bị xóa. Xem emacs.stackexchange.com/help/how-to-ask .
vẽ

1
@Drew, fwiw Tôi nghĩ đây chỉ là vấn đề ngôn ngữ / giải thích. Treemacs là một gợi ý hoàn toàn chấp nhận được cho câu hỏi của OP.
EdwardGarson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.