Небольшая заметка, посвященная вопросу настройки тем оформления (skins) в популярном и очень полезном консольном файловом менеджере Midnight Commander.
И попутно затрагивается вопрос с настройкой отображения кириллицы в Midnight Commander под управлением OSX.
Пару хвалебных слов
Midnight Commander - это консольный файловый менеджер. Консольный - потому что он работает в консоли, из эмулятора терминала. Внешне он очень похож на аналогичный Far Manager под операционной системой Windows.
Midnight Commander - очень легкий, потому что для своей работы он использует псевдографику.
Midnight Commander - обладает большими возможностями, больше половины которых обычный пользователь даже не применяет на практике.
Устанавливается Midnight Commander из пакетного менеджера, так как эта утилита имеется в репозиториях любого дистрибутива Linux. В Debian \ Ubuntu \ Mint установка производится такой командой:
Оформление Midnight Commander
После установки Midnight Commander и его первоначального запуска внешний вид программы будет примерно таким:
Прямо скажем, зрелище не очень привлекательное, особенно - зеленый шрифт на синем фоне. Это тема оформления (skin) по умолчанию для Midnight Commander и называется она также - default.
Но оформление Midnight Commander можно (и нужно) поменять и сделать это просто, так как эта программа идет с предустановленным набором тем оформления.
Готовые темы оформления (skins) после установки Midnight Commander располагаются по пути:
Туда можно заглянуть и выбрать, что понравиться:
Выбрать тему оформления для Midnight Commander можно командой:
Здесь ключ -S указывает, что при запуске Midnight Commander необходимо использовать тему оформления. Имя темы оформления (skin) указывается после ключа. Результат приведенной выше команды будет следующим:
Уже значительно лучше, не правда ли? Таким образом можно перебрать все имеющиеся в комплекте темы и выбрать понравившуюся.
Когда тема оформления выбрана, нужно прописать ее в конфигурационном файле Midnight Commander, чтобы последний запускался каждый раз именно с этим skin’ом.
Файл настроек Midnight Commander располагается по пути:
и запускается на редактирование таким образом:
В этом файле нужно найти строчку skin и изменить значение параметра на название файла темы (из /usr/share/mc/skins):
Обратите внимание на название skin’а в данном случае - modarin256. Здесь 256 - это количество цветов отображения, которые используются в этой теме.
По умолчанию в Linux Mint консоль не поддерживает отображение такого количества цветов. Если запустить Midnight Commander с темой modarin256 (к примеру), то появится ошибка и предложении использовать тему по-умолчанию (default).
Включить поддержку отображения 256 цветов в консоли можно, добавив строку export TERM=xterm-256color в файле .bash_profile (если используется BASH), в файле .zshrc (если используется ZSH), в файле .profile (если используется macOS).
В моем случае используется ZSH и файл .zshrc будет выглядеть таким образом:
Если все сделано без ошибок, то запуск Midnight Commander выдаст такой результат (используется тема оформления modarin256):
Можно попробовать тему xoria256 - хорошо проработанная тема, с которой также приятно работать. Об этой теме была статья на Хабрахабр - Цветовая схема Xoria256 для Midnight Commander:
Midnight Commander и кириллица в macOS
Установка и настройка Midnight Commander в операционной системе OSX мало отличается от аналогичных действий в Linux.
Устанавливать Midnight Commander в macOS проще всего с помощью Homebrew:
Не забываем включить поддержку 256 цветов в консоли OSX, если хотим использовать богатые цветом темы оформления Midnight Commander, такие как modarin256 или xoria256.
Для этого редактируем файл .bash_profile или файл .zshrc (если используется ZSH):
Дополнительным шагом будет добавление в файл .bash_profile (или .zshrc) двух строчек:
… для того, чтобы в Midnight Commander правильно отображались русскоязычные имена файлов и директорий. Иначе вместо вразумительных имен файлов будут одни вопросительные знаки.
Вариант с добавлением строки:
… в файле .bash_profile у меня не сработал.
На этом все.