- PVSM.RU - https://www.pvsm.ru -

Таблицы, трекер задач, отчётность и другие инструменты для организации командной работы мы собрали в одном сервисе — MWS Tables [1]. Корпоративную почту с привычным интерфейсом мы выделили в отдельный сервис [2]. Если же вам удобнее пользоваться программами в стиле FAR Manager и Mutt, эта статья поможет. Ведь культура текстовых интерфейсов (text-based user interface, TUI) никуда не делась. Мы собрали несколько таких инструментов для работы с почтой, документами и файлами. Поговорим про файловые менеджеры Ranger и vifm, вдохновленные редактором Vim, а также SC-IM для работы с таблицами в терминале.
Существуют почтовые индексаторы вроде notmuch [4] (написан на C), которые организуют электронную почту, формируя быстрый поисковый индекс. Но чтобы комфортно с ними взаимодействовать, необходим сторонний интерфейс — например, alot [5]. Он написан на Python, а в его основе лежит библиотека для построения текстовых UI — Urwid [6]. Для обработки вложений применяется [7] mailcap.
Инструмент alot находится в открытой разработке с 2011 года. Ей занимается команда энтузиастов под руководством профессора Патрика Тоцке. К слову, он поддерживает и другие open source проекты — например, индексную систему Xapers [8].
Alot может работать с несколькими почтовыми аккаунтами одновременно, имеет привязки клавиш Vim и поддерживает PGP/MIME. Также в нём присутствует настраиваемая строка состояния с уведомлениями и менеджер баз данных.
Несмотря на свою «текстовость», alot все же довольно кастомизируемый инструмент. Можно подкрутить цвета и темы [9] оформления интерфейса, настроить собственные хуки для определённых событий.
Пользователи ценят alot и подобные ему инструменты за высокую скорость работы. Один из них даже поделился [10] парой полезных конфигов — например, для редактирования писем с помощью Vim. Другой автор выделил такие преимущества, как отображение содержимого разных ящиков в одном окне и быструю архивацию почты по нажатию кнопки. Опытные пользователи инструмента уверены, что после небольшой настройки новичку потребуется порядка пяти минут, чтобы освоиться с его функциональностью. Хорошей точкой для старта будет документация, в которой разработчики подробно описали установку и настройку.
Другой пример TUI-клиента для работы с notmuch — aerc [12]. Изначально инструмент представил разработчик и руководитель платформы SourceHut Дрю Деволт как альтернативу alpine и mutt. Однако с 2022-го развитием форка занимается программист Робин Жарри из Red Hat.
Функциональность aerc похожа на alot. Оба инструмента предлагают возможности кастомизации, позволяют работать с несколькими почтовыми ящиками и поддерживают горячие клавиши Vim. Однако aerc не так прост в настройке, а на первоначальное освоение может уйти пара часов.
Существуют TUI-инструменты, способные хотя бы на базовом уровне (и с ограничениями) заменить офисные приложения. Например, MinEd [14] — для работы с текстовыми файлами с поддержкой Unicode. Его можно использовать на Linux, Cygwin, системах Unix, OpenVMS, а также Windows.
Первая версия MinEd была представлена в 2005 году разработчиком Томасом Вольффом. На сегодняшний день для проекта почти не выходят обновления, но в 2022 году репозиторий [15] пересобрали для релиза на GitHub.
Философия проекта — максимальная простота. Специфика TUI-среды не лишает MinEd привычных для современных пользователей возможностей. Например, он предлагает всплывающие и выпадающие меню, подсветку синтаксиса, экранные подсказки и man-страницу почти такой же длины, что и mplayer [16].
Если MinEd является TUI-альтернативой офисным приложениям для работы с текстом, то SC-IM [17] предназначен для работы с электронными таблицами. Его история началась в 1981 году под именем SC, и проект развивался до 2002-го, пока не замер. В 2015-м его перезапустили, а сейчас им занимается разработчик Андрес Густаво Мартинелли.
Программа следует заветам Vim, поэтому тот же режим редактирования запускается с помощью команды, использующей двоеточие в качестве префикса. Инструмент поддерживает работу с 65 536 строками и 702 столбцами. Хотя количество строк может быть расширено до 1 048 575 по желанию. Он умеет экспортировать в Markdown, импортировать ODS и сохраняет совместимость с форматами 80-х — раньше конвертация в Google-таблицы требовала большого количества ручных правок.
Из дополнительных возможностей также стоит отметить Lua-скрипты с триггерами и динамически подключаемыми модулями. Внешние функции, написанные на C или иных ЯП, можно использовать в формулах.
Ranger [19] — текстовый файловый менеджер, вдохновленный редактором Vim. В нём используется интерфейс ncurses, отображающий иерархию каталогов. А вместе с ним поставляется программа для запуска файлов — rifle [20].
Впервые Ranger представили в 2010 году. К нынешнему дню развитие ranger несколько замедлилось — хотя в ноябре 2024-го вышло небольшое обновление. Ranger обладает всей базовой функциональностью файловых менеджеров. В то же время, хотя это и TUI-инструмент, он поддерживает предпросмотр изображений в цвете.
Авторы подготовили руководство [21] по работе с Ranger. В нём описаны не только примеры использования функций, но и их внутреннее устройство. Например, для предварительного просмотра картинок в ranger задействована утилита w3mimgdisplay из текстового браузера w3m [22]. А для drag and drop создатели обратились к решению dragon [23]. В целом познакомившиеся с ranger хвалят менеджер за простоту написания кастомных команд и гибкую функциональность.
Однако инструмент не заточен для работы с большим количеством файлов за пределами среднестатистического персонального компьютера.
Другим решением с аналогичной функциональностью является — vifm [24]. Как и предыдущий менеджер, этот использует сочетания клавиш из Vim, а часть идей при его разработке была позаимствована из почтового клиента mutt [25].
Vifm появился в 2002 году и до сих пор активно разрабатывается, получая относительно частые обновления. Только за 2025 год уже вышло две новых версии. Сейчас над ним работает мейнтейнер нескольких open source проектов и член openSUSE Майкл Веттер, а также и программист под ником xaizek.
В vifm встроена поддержка тегов для каталогов или файлов и интеграция с GNU Screen и tmux. Также этот файловый менеджер может работать с форматами изображений PNG, JPG, BMP, XPM, документами PDF, EPUB, DJVU и шрифтами OTF, TTF. Для мультимедийных материалов доступны AVI, MP4, MKV.
Комментаторы называют инструмент легковесной альтернативой Midnight Commander, а также отмечают удобство работы с несколькими панелями сразу и быстродействие программы.
Автор: randall
Источник [26]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/pochta/422185
Ссылки в тексте:
[1] MWS Tables: https://mws.ru/dev-tools/mws-tables/?utm_source=habr.com&utm_medium=owned_media_tablestextui&utm_content=article&utm_term=tablestextui
[2] сервис: https://mws.ru/services/mail/?utm_source=habr.com&utm_medium=owned_media_mailtextui&utm_content=article&utm_term=mailtextui
[3] Источник: https://inconsolation.wordpress.com/2015/04/14/alot-with-notmuch-help-involved-and-little-more/
[4] notmuch: https://notmuchmail.org/
[5] alot: https://github.com/pazz/alot
[6] Urwid: https://urwid.org/
[7] применяется: https://alot.readthedocs.io/en/latest/installation.html
[8] Xapers: https://github.com/pazz/xapers
[9] темы: https://github.com/pazz/alot/tree/master/extra/themes
[10] поделился: https://deadc0de6.github.io/articles/email-stack.html
[11] Источник: https://lwn.net/Articles/993498/
[12] aerc: https://aerc-mail.org/
[13] Источник: https://mined.github.io/
[14] MinEd: https://github.com/mined/mined
[15] репозиторий: https://github.com/mined/mined/releases
[16] mplayer: https://inconsolation.wordpress.com/2014/01/14/mplayer-at-the-framebuffer-or-without/
[17] Источник: https://github.com/andmarti1424/sc-im
[18] Источник: https://ranger.github.io/screenshots.html
[19] Ranger: https://ranger.github.io/
[20] rifle: https://github.com/ranger/ranger/blob/master/ranger/ext/rifle.py
[21] руководство: https://github.com/ranger/ranger/wiki
[22] w3m: https://w3m.sourceforge.net/
[23] dragon: https://github.com/mwh/dragon
[24] Источник: https://vifm.info/gallery.shtml
[25] mutt: https://en.wikipedia.org/wiki/Mutt_(email_client)
[26] Источник: https://habr.com/ru/companies/mws/articles/917126/?utm_campaign=917126&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.