ДЛЯ НАЧАЛА: ЖИВЫЕ

- Knoppix -
Линукс за пять минут
- Puppy Linux -
Хороший друг


ДЛЯ ДЕЛА: ПРОФИ

- Debian -
Он такой один
- Linux Mint -
С родинкой на щеке!
- CentOS -
Копейка рубль бережёт!
- Fedora -
По следам Red Hat
- Ubuntu Linux -
Мы одной крови!
- Mageia -
Красота и удобства
- openSUSE -
Настоящее немецкое качество
- Slackware -
Линукс из кубиков
- ALT Linux -
Что русскому хорошо





ДЛЯ ДЕЛА: РОЛЛЫ

- ArchLinux -
Гениальное - просто!
- PCLinuxOS -
Просто линукс
- Aptosid -
Почувствуй силу!


ДЛЯ ДЕЛА: СОБЕРИ САМ

- Gentoo -
Каждому своё
- LinuxFromScratch -
Линукс с нуля


ДЛЯ ДЕЛА: ЛЁГКИЕ

- DeLiCate -
Старость в радость!
- SLAX -
Тысяча и один модуль


ЗАЩИТА

- OpenWall -
Не стучите, закрыто!
- Kali -
Вам, хакеры!


ПРИЛОЖЕНИЯ

- Planet CCRMA -
Работа со звуком
- VegaStrike -
Каждому по планете!


ЭКСПЕРИМЕНТ

- коЛинуксы -
Не выходя из Виндоус
- GoboLinux -
Очевидно и вероятно
- ReactOS -
Освободите Виндоус!


РОДНЯ

- BSD-семейство -
На плечах гигантов
- OpenIndiana -
До звёзд рукой подать


АРХИВ (2003-2016)
ФОРУМ




НАШИ ПРОЕКТЫ

MATRIX GL
ПОЛЕЗНЫЕ СОВЕТЫ
ПИНГВИН В КАРМАНЕ
ЗАКЛАДКИ
СТАТЬИ
КОНТАКТЫ


ПОМОЧЬ






Личный архив ЕЗ

mutt: консольный почтовый клиент

"All mail clients suck. This one just sucks less."

(Все почтовые клиенты уродские. Этот просто менее уродлив, чем другие.)

Michael Elkins, автор mutt

Сегодня мы поговорим об одном из мощнейших почтовых клиентов (точнее, MUA) в Linux. Сразу скажу, что это именно MUA, т.е. mutt не умеет сам получать и отправлять письма. Поэтому для нормальной работы с ним нужна настроенная почтовая система с MTA (см. мою статью об этом).

mutt берет письма из ящиков формата mbox. Предположим, что наш procmail раскладывает входящую почту по ящикам, расположенным в каталоге ~/Mail (переменная folder, используемая mutt, по умолчанию равна именно ~/Mail). Чтобы из mutt можно было быстро открывать эти ящики, укажем в ~/.mutt/muttrc их список. Выглядит это примерно так:

mailboxes +inbox +friends +lists/community +lists/devel

Здесь после ключевого слова mailboxes чеоез пробел перечисляются пути к ящикам, причем знаки + и = заменяются на значение переменной folder (~/Mail по умолчанию). В самом mutt эти знаки также часто используются и имеют аналогичное значание.

Теперь в mutt клавишей "c" ("сменить ящик") и двойным Tab будет вызываться список из указанных ящиков. Кроме того, при запуске и через каждые 5 с. все упомянутые ящики будут проверяться на наличие новой почты. Кстати, если есть ящики с новыми письмами, при нажатии клавиши "c" будет предложено открыть 1-й из таких ящиков.

Настраиваем дальше. Укажем папки для черновиков и отправленных писем:

set postponed=+drafts

set record=+sent

Слегка изменим стандартный вид списков писем и папок:

set index_format="%4C %Z %{%b %d} %-31.31F %N (%4c) %s"

set folder_format="%t%N %-30.30f %8s"

Настроим опции редактирования писем:

# мой любимый редактор icon_wink.gif - можно и emacs, например

set editor="vim -c 'set ft=mail tw=74' '+/^$'"

# не задавать глупых вопросов перед началом редактирования

set autoedit

# можно редактировать заголовки письма прямо в редакторе

set edit_headers

(описания опций можете посмотреть в man muttrc).

Еще куча полезных настроек:

# тут всё понятно

set forward_format="Fwd: %s"

set tmpdir=~/tmp

# прокручивать список писем по 1 строке, а не экранами

set menu_scroll

# запрашивать вид пересылаемого письма, по умолчанию в теле, а не в аттаче

set mime_forward=ask-no

# удалять пустые ящики вместе с последним сообщением в них

set nosave_empty

# сортировка - сначала по дискуссиям, дискуссии по времени, самое новое вверху

set sort=threads

set sort_aux=reverse-date

# отображать в запросах y/n вместо д/н

set show_alt

# без вопросов цитировать сообщение при ответе

set include

# отключаем функцию печати icon_wink.gif

set noprint

# необходимо для отправки писем через sendmail/postfix

set envelope_from

# не различать "новые" и "непрочитанные" письма

set nomark_old

# список кодировок, используемых для отправки - используется 1-я из них, содержащая все символы отправляемого письма

set send_charset="us-ascii:iso-8859-1:koi8-r:windows-1251:utf-8"

# при достижении конца письма не переходить на следующее автоматически

set pager_stop

# при действиях над письмами (удаление, перемещение и т.д.) производить их над всеми помеченными, если они есть

set auto_tag

# правильно обрабатывать вложения с неправильно закодированными именами

set rfc2047_parameters

# никогда не сворачивать дискуссии с непрочитанными сообщениями

set nocollapse_unread

# при просмотре писем верхние 12 строк занимает дерево сообщений (по умолчанию его не видно при просмотре отдельных писем)

set pager_index_lines=12

# во всех ящиках из каталога lists/ при входе сворачивать дискуссии

folder-hook lists/ "push ^[V"

В последней строке использована команда folder-hook, позволяющая выполнять указанную в ней команду лишь для определенных ящиков. С ее помощью в mutt организовываются различные настройки для разных ящиков. Например, сделаем так, чтобы в обычных ящиках письма сортировались по дате, а в папке lists - по дискуссиям:

set sort=reverse-date

folder-hook lists/ 'set sort=threads'

Аналогично можно сделать с любым параметром.

Еще скажу одну важную вещь насчет списков рассылки (мейл-листов). Адреса всех листов, на которые Вы подписаны, необходимо перечислить в файле конфигурации:

subscribe list1@lists.com

subscribe list2@lists.com

Теперь несколько слов об интерфейсе mutt. У программы есть 2 основных режима: "index" - список писем и "pager" - просмотр отдельного письма. Плюс режим написания нового письма, но этим занимается внешний редактор. В обоих режимах клавиша ? открывает справку по используемым в этом режиме клавишам.

Чтобы открыть ящик, нажмите "c" и затем Tab. Откроется оглавление каталога ~/Mail. Клавишей Tab можно переключиться в режим списка ящиков, указанных в mailboxes, и обратно. Нажмите Enter на нужном ящике, и откроется список его писем.

Клавиша X (Shift-x) переключает показ всех и только непрочитанных писем. Клавиша Enter откроет выделенное письмо в режиме просмотра. Стрелки влево-вправо перебирают письма, стрелки вверх-вниз по умолчанию делают то же, но я пишу в muttrc следующее:

bind pager previous-line

bind pager next-line

Теперь стрелки вверх-вниз листают текущее письмо.

В обоих режимах работают следующие клавиши. Клавиша Tab переходит к следующему непрочитанному сообщению. Клавиша r открывает редактор для написания ответа на текущее письмо, клавиша L делает то же самое, но для списков рассылки (отвечая в список, а не автору). Клавиша f пересылает текущее письмо. Клавиша m начинает новое письмо. Во всех случаях после написания сообщения и выхода из редактора (с сохранением!) откроется окно отправки сообщения, где можно поменять некоторые заголовки (нажмите ? для справки), вложить файл (клавишей a), продолжить редактирование (клавиша e), отправить сообщение (клавиша y) или выйти из этого диалога (клавиша q, при этом спросят, надо ли сохранить черновик письма на будущее или же удалить его; чтобы продолжить отложенное сообщение, в любой момент нажмите m и ответьте "да" на предложение продолжить отложенное).

В режиме списка писем клавиша d "удаляет" сообщения, при этом письма лишь помечаются для удаления. Чтобы окончательно удалить письмо, нажмите $ или откройте другой ящик. Клавишей u можно снять эту пометку с письма, которое передумали удалять. Клавиша s сохраняет письмо в другой ящик, при этом (по умолчанию) удаляя из текущего. Клавиша t помечает текущее сообщение, затем помеченные сообщения можно одной клавишей удалить или переместить.

Вернуться к оглавлению


При частичной или полной перепечатке, переводе, переработке материалов сайта ссылка на Knoppix.ru обязательна.
(c) Knoppix.ru 2003 - 2016