Ranger – это консольный файловый менеджер с vim-подобными комбинациями клавиш, который использует библиотеку ncurses, чтобы предоставить производительный интерфейс для файловой системы.
Ranger использует общие соглашения текстовых файловых менеджеров (таких как Midnight Commander) и графических файловых менеджеров (как, например, Finder в Mac OS X).
Установка Ranger
Пакет Ranger доступен в стандартном репозитории Ubuntu, потому его можно очень просто установить при помощи пакетного менеджера apt-get. Также нужно установить некоторые дополнительные приложения, которые позволят Ranger просматривать различные форматы файлов.
sudo apt-get update
sudo apt-get install ranger caca-utils highlight atool w3m poppler-utils mediainfo
После установки ненадолго запустите Ranger, а затем отключите его. Это позволит программе создать структуру каталогов для хранения конфигурационных файлов.
ranger
Q
Итак, Ranger создал все необходимые каталоги, и теперь можно скопировать конфигурационные файлы программы:
ranger --copy-config=all
creating: /home/DemoUser/.config/ranger/apps.py
creating: /home/DemoUser/.config/ranger/commands.py
creating: /home/DemoUser/.config/ranger/rc.conf
creating: /home/DemoUser/.config/ranger/options.py
creating: /home/DemoUser/.config/ranger/scope.sh
Чтобы иметь возможность позже отредактировать конфигурационные файлы, поместите их в ~/.config/ranger:
cd ~/.config/ranger
Использование Ranger
Прежде чем приступить к изучению особенностей Ranger, нужно создать несколько тестовых файлов:
cd ~
wget http://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.png
wget http://upload.wikimedia.org/wikipedia/commons/4/40/Equipo1.gif
wget http://upload.wikimedia.org/wikipedia/commons/f/f8/Cula_Duca.jpg
cp /usr/share/doc/shared-mime-info/* .
tar -czvf zipped.tar.gz README copyright
Запустите Ranger:
ranger
На экране появится макет в три колонки. Этот тип представления дерева файлов называется «Miller columns» и, как правило, ассоциируется с файловым менеджером Finder в Mac OS X.
Средний столбец – это текущий рабочий каталог (в данном случае это домашний каталог).
Левая панель отображает родительский каталог текущего каталога, а правая показывает предварительный просмотр файла (если таковой доступен), с которым вы в настоящее время взаимодействуете.
Если переместить вниз список файлов, используя клавиши со стрелками, можно увидеть, как меняется панель предварительного просмотра в зависимости от типа выбранного файла.
Текстовые файлы отображаются в виде простого пейджера (как правило, при помощи программы less). Сжатые файлы автоматически распаковываются и просматриваются, как и остальные файлы. Даже файлы PDF преобразовывается в текст для просмотра.
Файлы изображения отображаются с помощью цветного ASCII Art. Четкость изображения во многом зависит от размеров окна. Если развернуть окно, изображение станет более подробным.
Навигация Ranger
Ranger использует много комбинаций клавиш vim. К примеру, команды перемещения полностью соответствуют vim:
- j = переместиться вниз
- k = переместиться вверх
- h = перейти в родительский каталог
- gg = перейти в начало списка
- G = перейти в конец списка
- <ctrl>-f = листать вниз
- <ctrl>-b = листать вверх
- J = листать вниз на 1/2 страницы
- K = листать вверх на 1/2 страницы
- H = вернуться назад через историю навигации
- L = переместиться вперед по истории навигации
Есть также некоторые «быстрые клавиши» для определённых каталогов, позволяющие быстро перейти к общим каталогам:
- gh = cd ~
- ge = cd /etc
- gu = cd /usr
- gd = cd /dev
- go = cd /opt
- gv = cd /var
- gm = cd /media
- gM = cd /mnt
- gs = cd /srv
- gr = cd /
- gR = перейти в каталог глобальных настроек Ranger.
Работа с файлами
Ranger позволяет выполнять множество различных операций над файлами при помощи интерфейса. Вот некоторые из наиболее распространенных операций:
- i: показать файл (позволяет просто просмотреть текстовый файл в пейджере вместо редактирования)
- l или E: открыть файл (открывает файл в файловом обработчике по умолчанию)
- r: открыть файл с помощью… (позволяет выбрать программу, с помощью которой будет открыт файл)
- z: изменить настройки (часто используемые тумблеры)
- zh: просмотреть скрытые файлы
- <space>: выбрать текущий файл
- t: отметить файл
- cw: переименовать текущий файл
- /: поиск файлов
- n: перейти к следующему совпадению
- N: вернуться к предыдущему совпадению
- yy: скопировать файл
- dd: отметить файл, чтобы вырезать
- <delete>: удалить выбранный файл.
Поддержка вкладок
Ranger также поддерживает встроенный просмотр вкладок, что позволяет работать с несколькими видовыми экранами. Вот наиболее распространенные клавиши управления вкладками:
- <ctrl>-n: создать новую вкладку
- <ctrl>-w: закрыть текущую вкладку
- <tab>: следующая вкладка
- <shift><tab>: предыдущая вкладка.
Общие команды
Эти клавиши предназначены для управления программой Ranger:
- ?: просмотр мануала Ranger
- 1?: просмотреть комбинации клавиш
- 2?: справка по командам
- 3?: справка по настройкам
- R: обновить текущий каталог
- Q: выход.
Командный интерфейс
Как и vim, Ranger предоставляет командный интерфейс, который позволяет работать с файлами в более сложных случаях. Он обладает довольно широким рядом функций, поэтому рассмотрим только основные:
- ! – выполнить команду из оболочки (не-ranger команду)
- : – выполнить команду ranger
- du – измерить использование диска текущего каталога
- chmod – изменить права на текущий файл.
Также есть множество флагов, которые можно использовать для изменения поведения команды. Их нужно использовать с тире после символа восклицательного знака (для команд оболочки) или двоеточия (для команд ranger).
- -s: игнорировать вывод текущей команды
- -d: отключить процесс и работать в фоновом режиме
- -p: вернуть вывод в пейджер Ranger
- -w: Do not return immediately after command execution. Hang until “Enter” is pressed
- -c: выполнить команду на текущий файл (не на выбранные файлы).
Также Ranger позволяет объединять файлы в группы для выполнения замены. Это делается при помощи заполнителей:
- %f: заменить выделенный файл
- %d: заменить текущий каталог
- %s: заменить выбранные файлы
- %t : заменить текущие отмеченные файлы.
К примеру, чтобы переименовать определённые файлы, можно просто выбрать их при помощи пробела и ввести:
:bulkrename %s
Это позволяет быстро переименовать большое количество файлов, открывая каждый файл в текстовом редакторе.