vifm файловый менеджер. vifmrc , vifm-help


разбираемся с vifm

#======================================
#
# Edit by Ben-Ja http://www.net4me.net
#    On Чт 02 ноя 2017 19:52:41
#
#======================================

Дошел и я до vifm.
Скажу, что давно искал альтернативу mc. Пробовал разные файловые менеджеры.
Из вдохновивших, отмечу ranger скорость путешествия по файлам системы дикая! Но. Функционал никакой.
Итак, мои поиски, пробы и тесты, привели меня к vifm.
Интерфейс консольный. Написан на том же ncurses что и mc, но благодаря описанию типов файлов, активно взаимодействует с любым окружением.
Если вы читали мои статьи по vim (многолетней давности), то вкурсе, что я люблю vim. =)
В этой статье, я постараюсь изложить своё знакомство с файловым менеджером vifm.

Плюсы:
1. Две панели. Которые можно использовать в разных режимах. (в отличие от ranger)
2. Скорость, с которой можно добраться до любого места системы, благодаря клавишам право/лево потрясающая.
3. Режим просмотра файлов во второй панели. Очень удобно просматривать конфили и текстовые файлы.
4. Дублирование функций на F клавиши. То есть, если привык (в mc) давить F4 для редактироваания или F7 для создания каталога — не ошибешься.
5. Легковес.
6. Всё что можно настроить, настраивается в конфиге. (за что я очень полюбил vim).
7. Закладки по всей системе, любые функции, настраиваемость, простор для творчества.

Миинусы:
1. Чтобы добраться до вкусностей, придется разбираться (как и в vim).
2. vifm не так известен и популярен (пока) как mc.
3. Мало информации (и на русском особенно).
4. Настраиваемость и простор для творчества. «Из коробки» без изучения документации, мало что понятно.

По порядку от простого к сложному.
О какой версии это пишется:

$ vifm -v
Version: 0.9
Git info: built out of repository

Support of extended keys is on
Parsing of .desktop files is enabled
Without GTK+ library
With magic library
With X11 library
With dynamic loading of X11 library
With file program
With -n option for cp and mv
With remote command execution

1. Запуск. в консоли (терминале) vifm

Но. И тут уже есть возможности. советую взглянуть на

vifm --help

Например, при старте можно сразу задать одну или обе панели.

vifm /etc/ ~/.vifm

vifm

2. Выйти из vifm

ZZ | :q | :q! | :quit | и так далее… Выйти из него можно =)

3. Перемещение.

Стрелки верх/низ, tab между панелями, стрелка влево/вправо — в дочерний или верхний каталог. Если уперлись в файл и нажали вправо, то сработает попытка его открыть. В чём именно открываются файлы, какие типы файлов — прописано в конфиге vifmrc, который находится (скорее всего, в ~/.vifm/vifmrc или в ~/.config/vifm/vifmrc)
Так же, для тех, кто привык к vi и vim, работают hjkl
Esc как и в vim.

4. Режим просмотра. :view или w задействует неактивную панель для просмотра файлов.

vifm w view

:view или w включить/выключить режим просмотра.
После включения режима просмотра, можно переключаться между просмотром/панелью.
Переключится на просмотр, например, для для прокрутки большого файла — Ctrl+w Ctrl+w (Так же как в vim между панелями) это я так и не нашёл в мануалах. Может, плохо искал. =)
Так же в режиме просмотра работает скроллинг мышью или тачпадом, если на панель просмотра перейти.
e — вариант открыть текущий файл для просмотра в активной (где находитесь) панели.
выход из редимов, как и в vim :q | ZZ и так далее.

5. Операции с файлами.

Подробно расписано в :help
Взять файл помощи vifm выкладываю сюда: vifm-help.txt. Скопировать его в каталог vifm после чего команда :help начнет работать.
Например:

cd ~/.vifm/
wget http://www.net4me.net/docs/vifm/vifm-help.txt

Или поискать в интернете vifm-help.txt

vifm help file

Из клавиш «а-ля mc», «из коробки» работают следующие:
F4 | :edit | l — редактировать файл.
F5 | :copy | yy — копировать файл.
F6 | :move | — переместить файл.
cw — переименовать файл.
F7 | :mkdir | — создать каталог.
F8 | :delete | del | dd — удалить файл/каталог.

Ну и команды vim и его специфика тут работают в полной мере.
yy — скопировать
p — вставить
Практически по каждой букве есть поддробная инструкция. Достаточно нажать букву и немного подождать. Отобразятся варианты продолжения команды.
Например, если нажать «y» то отобразится меню y если z, то покажется список сочетаний с z и т.д. см :help

virm подсказки клавиш

6. Операции с мусором или «Удивительный trash».

Для работы с мусором, его нада сначала иметь. Поэтому я создал каталог для мусора и в конфиге прописал путь к trash:

set trash 
set trashdir="~/.vifm/Trash"

По умолчанию, работа с мусором была отключена в моей версии vifm. То есть, по умолчанию файлы удалялись сразу и без возможности восстановления.
Сразу скажу, что в vifm этих мусорных корзин может быть много.
И уследить за всеми ними помогают команды :lstrash и :trashes. Первая показывает какие файлы (и путь, где хранился оригинал файла) попали в мусор, вторая (:trashes) даёт возможность выбрать «корзину» и переместиться в конкретный мусор, чтобы уже оттуда восстановить понадобившиеся файлы командой :restore

vifm colorscheme. Цвета и оформление.

В оформлении внешнего вида vifm — полная свобода для творчества.
Можно выбрать одну из готовых схем, можно придумать свою — что достаточно просто.
Место, откуда vifm брать схему описывается в конфиге.
В моём случае, это .vifm/colors

Применить цветовую схему к vifm, можно командой :colorscheme имя_файла_схемы.

vifm colorscheme

Для того, чтобы выбранная схема использовалась по умолчанию, следует прописать её в vifmrc:

colorscheme net4me.vifm

В дополнении, я выложу все примеры конфигов из этой статьи.

Дополнения:

структура конфигов моего vifm.

.vifm/
.vifm/colors
.vifm/colors/near-default.vifm
.vifm/colors/Default.vifm.first
.vifm/colors/zenburn.vifm
.vifm/colors/reicheltd-light.vifm
.vifm/colors/solarized-dark.vifm
.vifm/colors/astrell.vifm
.vifm/colors/lucius.vifm
.vifm/colors/mc-like.vifm
.vifm/colors/zenburn_1.vifm
.vifm/colors/g80.vifm
.vifm/colors/desert.vifm
.vifm/colors/matrix.vifm
.vifm/colors/darkdesert.vifm
.vifm/colors/ph.vifm
.vifm/colors/snowwhite.vifm
.vifm/colors/net4me.vifm
.vifm/colors/semidarkdesert.vifm
.vifm/colors/Default.vifm
.vifm/scripts
.vifm/scripts/README
.vifm/Trash
.vifm/vifmrc
.vifm/vifminfo
.vifm/vifm-help.txt

из того что потребовалось сразу:
показать скрытые файлы zo

P.S. Не являюсь гуру vifm, только осваиваю его, поэтому, скорее всего данная статья будет изменяться и дополняться новыми сведениями.
Пока выклладываю как есть на данный момент.