dired это хорошо, но хочется чего-то более наглядного для работы с файлами. Очень хорошее решение предлагает автор пакета
treemacs.
Краткая инструкция по пользованию:
1. Установка
(message "Загрузка пакета treemacs.")
(require 'treemacs)
(setq treemacs-width 30) ;; Ширина окна с файлами
(define-key treemacs-mode-map (kbd "f") 'find-grep) ;; По нажатию будет появляться окно для поиска
(global-set-key (kbd "") 'treemacs) ;; Вкл/выкл отображение дерева
(treemacs-follow-mode 1) ;; При смене буфера показывать файл в дереве
(treemacs-git-mode 'simple) ;; Без всяких сложностей
(treemacs-filewatch-mode 1) ;; Отслеживать состояние файловой системы в реальном времени
При первом запуске Treemacs предложит настроить каталоги. Введите проекты и каталоги в таком формате:
* Ansible
** Ansible
- path :: ~/repo/ansible
* dunaevsky-ms.ru
** dunaevsky-ms.ru
- path :: ~/repo/dunaevsky-ms.ru
* EMACS
** Emacs
- path :: ~/.emacs.d
Чтобы завершить редактирование, нажмите [
Ctrl-c, Ctrl-c]. Если ошибок нет, буфер закроется, Treemacs тоже. Вызовите его снова, и он покажет проект, идущий в списке первым.
Прочие комбинации клавиш:
[u] — выйти на уровень вверх
[Ctrl+c, Ctrl+w, e] — редактировать (
edit) проекты (то самое окно, что появляется при первом запуске)
[Ctrl+c, Ctrl+w, s] — переключиться (
switch) на другой проект (будет выведен список)
[c, d] — создать (
create) директорию (
directory)
[c, f] — создать (
create) файл (
file)
[R] — переименовать (
rename) элемент под курсором
[r] — обновить (
refresh) состояние дерева
[n] — перейти к следующему (
next) элементу списка независимо от уровня
[Alt+n] — перейти к следующему элементу списка, расположенному на том же уровне. Полезно, когда открыта куча директорий, и нужно перейти из одной в другую.
[p] — перейти к предыдущему элементу списка независимо от уровня
[Alt+p] — перейти к предыдущему элементу списка, расположенному на том же уровне.
[o, v] — открыть файл под курсором, разделив предыдущий активный буфер по вертикали (будут один под другим)
[o, h] — открыть файл под курсором, разделив предыдущий активный буфер по горизонтали (два буфера будут рядом)
[?] — справка. Там много полезного.
#treemacs