Linux на работе: эксперименты

К такой теме нужен дисклеймер:

  • Нет никаких рациональных причин делать это
  • Настройка занимает существенное время
  • Реально я это не использую, хотя пробовал сам, и всё работает

Но если вы не испугались, мы заглянем за край работы в терминале: что будет, если по работе вы много используете Телеграм и почту, и вам понравилось работать в терминале? Есть варианты, о них и пойдёт речь:

  • telega.el для Телеграм
  • mu4e для почты вообще и в частности для Gmail

telega.el

Если смотреть альтернативные клиенты для Телеграма, то это один из наиболее живых и динамично развивающихся. Причём если вы используете графический Emacs (а не в терминале), то вам становится доступен просмотр графики, pdf прямо в Emacs. Да, голосовые и видео-звонки должны работать, но я не пробовал. Лично мне не очень нравится буйство красок, картинок и шрифтов в Emacs, что кардинально решает терминал. Но в терминале нет просмотра картинок, с помощью которых мы во многом общаемся.

Но основной недостаток для меня не в этом, а реализация: в Emacs окна отдельных чатов сделаны отдельными буферами, поэтому их приходится всё время закрывать или переключаться между ними. В родном клиенте Телеги, на мой взгляд, решение лучше: два окна, контакты и чат, и содержание чата меняется в зависимости от того, какой контакт или чат выбран в окне контактов.

Прежде всего, понадобится Emacs версии 27, для Ubuntu нужно подключить PPA либо установить Emacs из Flatpak.

Есть несколько вариантов установки telega.el, для Doom Emacs самый простой – указать telega.el в packages.el: там есть зависимые пакеты, которые в этом случае установятся автоматически:

(package! telega)

Дальше нужно установить tdlib, и вот тут у меня возник затык. Дело в том, что руководство на сайте telega.el написано для разработчиков, а не для простых смертных, поэтому там явно не указано, что нужно установить зависимости:

sudo apt install libssl-dev zlib1g zlib1g-dev libreadline6-dev

Ну и остаётся найти, где находится telega.el, и прописать путь в config.el:

(use-package telega
  :load-path  "~/.emacs.d/.local/straight/build-27.2/telega/telega.el"
  :commands (telega)
  )

После этого всё должно работать, запускается в Emacs с помощью Alt+X и дальше telega. :)

mu4e

Сейчас почта приходит, в основном, в HTML, и хочется тоже как-то снизить разнообразие оформлений, но при этом сохранить ссылки и возможность перехода по ним. В терминале Emacs может отображать HTML, и у него для этого есть несколько способов, последним является shr. Чтобы он отображал всё в стандартных цветах, нужно добавить в config.el:

(setq shr-use-colors nil)

С точки зрения клиентов для Emacs стандартным является Gnus, но у Gmail достаточно специфичная структура папок. Поэтому всё работает, но не очень хорошо. Mu4e хорошо работает с папками Gmail изначально, и заточен больше на поиск в большом числе сообщений. Кроме mu4e, нужно настроить транспорт, например, mbsync, а ещё установить сам mu нужной версии и инициализировать его, и тут команда отличается в зависимости от версии. В целом мне помогло руководство здесь, а также поиск по пакетам.

Наверное, здесь есть экономия времени для разработчиков, которые работают в Emacs, и для просмотра почты не нужно из него выходить, а редактирование писем происходит также в Emacs.

Если вы прошли все эти квесты, и у вас всё заработало – поздравляю, вы неплохо размяли мозги. :)

@Константин Овчинников
Теги: #linux

Комментарии