Меню Рубрики

Почтовый клиент linux консольный

Записки программиста

Настройка консольного e-mail клиента Mutt за пять минут

Мотивация пользоваться вместо обычных почтовых клиентов, таких, как Thunderbird, или, скажем, Claws Mail, консольным почтовым клиентом Mutt сродни мотивации пользоваться irssi вместо HexChat. Консольные приложения, как правило, намного проще своих GUI-аналогов, а значит не так сильно жрут батарею и более безопасны. Также они управляются исключительно при помощи клавиатуры, могут быть запущены на сервере в screen / tmux, и вот это все. К сожалению, конкретно Mutt совершенно незаслуженно пользуется репутацией программы, очень сложной в настройке. Сегодня мы убедимся, что в действительности настройка Mutt не сильно отличается от настройки любого другого почтового клиента.

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

В дополнение к пакету mutt нужен еще и msmtp по той причине, что сам Mutt является только MUA, а не MTA. Другими словами, непосредственно для отправки писем Mutt использует сторонние программы. Не переживайте, это не так страшно, как может показаться.

Дополнение: Начиная с версии 1.5 стало возможным использовать smtp напрямую, без сторонних MTA. Для этого Mutt должен быть собран с соответствующими опциями. В зависимости от вашей системы / дистрибутива эти условия могут выполняться или не выполняться, поэтому в этой статье описывается способ, работающий всегда.

Первым делом указываем параметры подключения к SMTP. В файле

/.msmtprc пишем что-то вроде:

Адрес сервера, имя пользователя и пароль, разумеется, нужно заменить на свои. Кроме того, в вашей системе путь к связке корневых сертификатов может быть немного другим. Думаю, вы без труда найдете нужный файл при помощи утилиты find.

Меняем права доступа к конфигу, иначе msmtp откажется использовать его:

Проверяем, что письма ходят:

Далее создаем примерно такой файл

Насколько мне известно, в третьем тысячелетии абсолютно все почтовые сервисы предоставляют IMAP, и про POP3 можно наконец-то забыть.

Запускаем Mutt. Некоторые основные клавиши (все не привожу, так как их очень много и в клиенте все равно повсюду есть подсказки):

  • ? — помощь;
  • Вверх/вниз — перемещение между письмами;
  • Enter — открыть письмо;
  • d — пометить, что письмо следует удалить;
  • u — отменяет пометку письма на удаление;
  • N — пометить письмо как прочитанное/непрочитанное;
  • $ — сохранить изменения (удалить помеченные письма, и т.д.);
  • (цифра) — переход к письму с заданным номером;
  • m — написать новое письмо;
  • r — ответить на письмо;
  • g — group reply, ответить всем;
  • f — forward, перенаправить письмо;
  • h — показать/скрыть все заголовки письма;
  • a — создать алиас для отправителя письма;
  • t — поставить/снять метку (tag);
  • ;(что-то) — выполнить что-то с отмеченным;
  • s — сохранить письмо на диск или в папку;
  • c? — просмотр папок (там же см справку про создание/удаление папок);
  • q — выйти из Mutt;

В любой непонятной ситуации просто нажмите Ctr+C, и на вопрос закрыть ли Mutt ответьте «no». Поиск по письмам работает примерно так. Нажмите T , затем введите

B pattern для поиска по телу сообщения или

s pattern для поиска по subject. По тому же принципу можно делать untag найденных ранее сообщений, только вместо T следует использовать Ctr+T. Подробности о поиске можно найти в документации.

Заметьте, что нажатие $ не приводит к загрузке новых писем. Загрузить новые письма можно, введя команду c? , и заново открыв папку INBOX. Понятно, что постоянно так делать неудобно, поэтому в

/.muttrc стоит дописать такой хоткей:

Еще один момент, который поначалу не очень понятен. Новые непрочитанные письма помечаются как N (new). Но если переподключиться, то они будут отмечены, как O (old). Это все еще непрочитанные письма, но которые мы уже видели в прошлый раз. Таким образом можно отличить новые письма от совсем-совсем новых.

Еще один хинт. По умолчанию Mutt отображает все письма «плоско». Мне лично древовидное отображение нравится больше. Включается оно так:

Примите во внимание, что Mutt имеет очень гибкие настройки в отношении что каким цветом подсвечивать. Вот вам для примера небольшой кусок

/.muttrc, чтобы вы могли представить масштабы (какая строчка что означает, думаю, и так понятно):

# new unread messages
color index brightgreen default «

# messages to me
color index cyan default «


color index brightcyan default «


color index brightcyan default «

# messages from me
color index yellow default «

# tagged messages
color index red default «

# messages about to be deleted
color index brightyellow default «

# message displaying settings
color hdrdefault green default
color header brightgreen default ^Subject:
color quoted cyan default
color signature red default

Мне очень нравится, что можно подсветить сообщения, отправленные лично тебе, а не просто в какой-нибудь мейлинг лист! Вообще, Mutt настолько гибок в плане настройки цветов, что для него делают целые темы.

Кстати, после внесения изменений в

/.muttrc, их можно подгрузить без перезапуска Mutt, введя:

По умолчанию Mutt скролит текст писем и списки писем экранами, а не по одной строке. Чтобы исправить это, я дописал в конфиг:

# scroll message line by line using arraws
bind pager previous-line
bind pager next-line

# scroll index line by line
set menu_scroll

Также в Mutt есть искуственные паузы, чтобы пользователь успевал прочитать все, что клиент выводит при подключении к IMAP серверу, и так далее. В целом это создает ощущение, что клиент тормозит, поэтому отключаем:

Еще, чтобы клиент работал быстрее, можно включить кэширование (не забудьте предварительно создать соответствующие каталоги):

/.mutt/header_cache»
set message_cachedir=»

Теперь, допустим, нам нужна адресная книга. Нет ничего проще!

/.muttrc дописываем что-то вроде:

Теперь, когда предлагается ввести адрес получателя при написании нового письма, просто начните вводить его никнейм. Никнеймы автодополняются при нажатии Tab. А если нажать Tab дважды, то открывается полный список алиасов.

И последняя пара полезняшек. Чтобы при редактировании писем в Vim ширина текста автоматически ограничивалась до 72-х символов, в

Интересно также, что Mutt позволяет слать письма прямо из консоли:

Чтобы вы могли лучше представить, как происходит работа с Mutt, я приготовил пару скриншотов. Оба скришота кликабельные, в полном размере имеют формат PNG, 1366 x 768 пикселей, размер менее 250 Кб.

Просмотр списка писем:

Чтение конкретного письма:

А теперь, внимание, вопрос! А как работать с несколькими мейлбоксами? Ну-ка, ну-ка, кто уже догадался? 🙂

Да просто дописываем информацию об еще одном SMTP-аккаунте в

/.msmtprc, создаем еще один .muttrc и переключаемся между ними при помощи :source . Я лично сложил все аккаунты в

/.mutt/user2 и так далее, а дэфолтный подключил в

/.muttrc с помощью директивы source. Адресную книгу по тому же принципу можно положить в

/.mutt/contacts. Единственная хитрость заключается в том, что после переключения на другой аккаунт при помощи :source , нужно сделать c! , чтобы клиент переподключился. Все гениальное — просто! Разумеется, для удобства можно определить хоткеи для переключения между аккаунтами. Пример вы найдете в полной версии

В нем же вы найдете кое-какие другие интересные вещи. Например, открытие ссылок из письма в браузере через urlscan, рендеринг HTML-писем при помощи lynx и их открытие в браузере по умолчанию, открытие картинок в gpicview, и не только. Кстати, много полезных рецептов, связанных с Mutt, можно найти на wiki-сайте Arch Linux. Ну и, конечно же, обратите внимание на официальный мануал по Mutt. Он классный и легко превращается в PDF-книгу, если нажать Ctr+P (print) в Chrome или Chromium.

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

А используете ли вы Mutt и если да, быть может, вам есть что дополнить?

Дополнение: О том, как прикрутить GPG к Mutt, читайте в посте Использование PGP/GPG, руководство для нетерпеливых.

Источник

Консольный почтовый клиент?

На своём ноутбуке я стремлюсь создать среду, в которой будет сведено к минимуму использование мыши.

Я использую awesome wm и firefox+vimperator. К сожалению, в случае с почтой я ещё не выработал приемлемого решения. Сейчас я пользуюсь или Яндекс.Почтой (веб-мордой) или Thunderbird (и даже Muttator) не спасает…

Моя сейчашняя цель: найти идеальный консольный почтовый клиент.

Я настроил offlineimap + msmtp, и теперь при наличии Maildir с моей почтой, я подыскиваю подходящий MUA.

Мои требования к почтовому клиенту выглядят так:

1) Быстрый поиск a la поиск в веб-версии (по возможности, лучше)

2) Быстрая работа с ящиком на 45k+ писем

3) Адекватная контактная книга с автодополнением хоть в каком-то виде (a la веб-интерфейс)

5) Очень желательно vim-подобный интерфейс, и обязательно vim в качестве редактора текстов

Я нарыл следующие варианты:

1) Sup. Все писают от него кипятком, но он не поддерживается с 2011 года, я не смог его нормально запустить

2) Mutt. Очень популярен, но последняя версия датируется 2010 годом. Есть версия mutt-kz с поддержкой notmuch, но в чём тогда её преимущество перед notmuch?

3) Notmuch. Пишут, что были вдохновлены Sup. Notmuch плотно интегрирован с поисковым движком и имеет массу фронтендов: notmuchmail.org/frontends/. Среди них я пока не нашёл идеального

Собственно, вопрос: можете ли вы посоветовать мне что-то конкретное (из этого списка или нет)? Может быть вы чем-то пользовались, но разочаровались? Любая информация будет полезна!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Почтовый клиент linux консоль
  • Почтовый клиент linux для exchange
  • Почтовые серверы для ubuntu linux
  • Почтовые сервера обзор linux
  • Почтовые программы для linux