Настройка Mutt для чайника
Михаил Е. Захаров, оригинал
Почтовый клиент mutt (http://www.mutt.org/)
cреди пользователей операционных
систем семейства Unix заслуженно
считается одним из лучших
поскольку обладает несколькими
важными качествами:
- Поддержка всех современных
функций E-mail клиентов.
- Быстрота работы программы и
простота пользовательского
интерфейса
- Безопасность кода
- И главное, цветной текстовый
режим, что делает возможным
использование mutt без X-Window.
Если же о достоинствах mutt
говорить кратко, лучше всего
процитировать разработчиков: "Mutt
is a small but very powerful text-based mail client for Unix
operating systems".
Эта статья предназначена для
новичков, поэтому я буду
рассматривать настройку mutt
довольно поверхностно,
останавливаясь лишь на тех моментах,
которые точно будут полезны при
первом знакомстве с mutt.
Установка
Mutt это cвободно-распространяемая
программа, которая портирована на
множество ОС, поэтому с компиляцией
из исходных текстов, которые можно
взять здесь http://www.mutt.org/download.html,
или с установкой из
прекомпилированных пакетов
проблем возникнуть не должно.
Например, с CD-ROM'а FreeBSD, mutt,
соответствующей версии, можно
установить как пакет:
su && mount /cdrom && pkg_add /cdrom/packages/mail/mutt/mutt-1.4.1i.tar.gz
или скомпилировать из исходных
текстов через систему портов:
$ su && cd /usr/ports/mail/mutt && make install && make clean && exit
Сразу после установки можно
убедиться, что mutt вполне
работоспособен даже с
конфигурацией по-умолчанию. Для
этого выполним команду:
$ mutt
На экране должен появиться черно-белый
интерфейс mutt:
Настройка
Читая man mutt видим, что mutt имеет два
глобальных конфигурационных файла,
/etc/Muttrc и /etc/mailcap. Первый файл как раз
и является основным
конфигурационным файлом mutt. Во FreeBSD
он нашелся, что вполне логично, в
каталоге /usr/local/etc. Второй, который
вообще нигде не обнаружился, должен
содержать описания реакций mutt на
нетекстовые типы MIME в теле письма.
Поскольку в разных операционных
системах файлы конфигурации могут
находится в различных местах
файловой системы, разбираться в
деталях вопроса их точного
местонахождения для каждой ОС мы не
будем. Сами глобальные настройки мы
тоже оставим в покое поскольку
конфигурация почтового клиента
вещь индивидуальная для каждого
пользователя. Поэтому сразу
перейдем к практической части.
Для того, чтобы настроить mutt для
своих нужд, пользователю
достаточно в своем домашнем
каталоге создать два файла: .muttrc и .mailcap,
которые в полной мере заменят ему
неуловимые глобальные файлы
конфигурации. Mutt поставляется с
примерами таких конфигураций, во
FreeBSD у меня эти файлы во время
установки попали в каталог /usr/local/share/examples/mutt.
За основу для творчества возьмем
sample.muttrc и sample.mailcap из этого каталога.
Для этого, находясь в своей
домашней директории выполняем:
$ cp /usr/local/share/examples/mutt/sample.mailcap ./.mailcap
$ cp /usr/local/share/examples/mutt/sample.muttrc ./.muttrc
Поскольку большинство параметров
.muttrc достаточно прозрачны и хорошо
прокомментированы в самом
конфигурационном файле, вы их сами
смело измените по своему
усмотрению, а я пока оставлю почти
все как есть, ограничившись лишь
минимальными изменениями:
set arrow_cursor # используем "->" вместо того, чтобы выделять всю строку
set attribution="On %d, %n wrote:" # при ответе на письмо пишем эту строчку в начале цитаты
set charset="koi8-r" # кодировка терминала
set copy=yes # всегда сохранять копии исходящей почты
set delete=yes # выбрасывать "удаленные" письма
set edit_headers # редактирование заголовков при создании письма
set editor="vim" # редактор
set help # показываем помощь
set include # в ответное письмо всегда включаем исходное
set mail_check=5 # как часто проверяем новую почту
set mbox=+mbox # здесь сохраняем прочитанную почту
set pager_index_lines=6 # количество строк показываемых в пейджере
set record=+outbox # сюда по-умолчанию сохраняем исходящие сообщения
set reply_to # Если есть reply-to используем
set reverse_name # Используем наш адрес так, как он указан
# в сообщении, на которое отвечаем
set nosave_empty # удаляем файл, если в нем не осталось сообщений
set sort=threads # метод сортировки
set sort_browser=reverse-date # сортировка файлов в браузере каталогов
set spoolfile='/var/mail/zakharov' # файл, который проверяем на наличие новой почты, (почтовый ящик МТА)
set tilde # рисуем ~ чтобы указать пустые строки
set nouse_domain # не дописываем домен
# set use_mailcap=yes # всегда используем значения из mailcap. Мой mutt отказался
# использовать эту переменную. На всякий случай закомментировали ее.
set pgp_verify_sig=no # не проверяем сигнатуры PGP
set visual=vim # редактор, вызываемый по ~v
Цвета, сочетания клавиш, описания
своих заголовков и т.д. можно менять
по вкусу, я же оставлю их без
изменения.
# Укажем порядок представления заголовков писем:
unhdr_order * # сбросим предыдущие установки
hdr_order date from subject to cc # укажем порядок следования заголовков
Далее закомментируем сортировщик
входящей почты по файлам, кучу
лишних почтовых ящиков и списков
рассылок, на которые автор примера
подписан:
# save-hook ^judge +diplomacy
# mailboxes ! +mutt-dev +mutt-users +open-pgp +wmaker +hurricane +vim +ietf
# +drums
# lists mutt-dev mutt-users
Конфигурационный файл mutt может
составляться из нескольких других,
но поскольку мы делаем простую
конфигурацию, постараемся уместить
все только в один файл и,
следовательно, убираем из файла
ссылки на другие файлы:
# source ~/.muttrc-local
В заключении описания файла .muttrc
хочу обратить внимание, на строку set
charset="koi8-r". Наличие правильной
кодировки в этой строке, гарантирует вам
отсутствие проблем при чтении
русских писем.
На этом примитивную настройку
можно считать законченной. Уже
сейчас можно читать "русские"
письма, включилась поддержка цвета,
это особенно удобно если при
составлении писем вы используете
редактор с подсветкой синтаксиса,
например указали set editor="vim" или
соответствующим образом
выставлены переменные окружения
EDITOR или VISUAL.
Однако почти сразу
обнаруживаются и не слишком
приятные моменты. Оказывается,
плохо читаются так называемые html-письма,
еще хуже обстоит дело с вложениями
в виде файлов от офисных продуктов
Microsoft. В этом случае, можно пойти
двумя путями, принципиально не
читать такие письма или
соответствующим образом настроить
.mailcap.
.mailcap
Формат файла .mailcap прост: слева MIME,
справа команды. Например, для того
чтобы решить проблему
с
просмотром html-вложений можно
настроить вызов lynx'a. Для этого
воспользуемся следующей записью в
файле .mailcap:
text/html; lynx -force_html %s; needsterminal;
Если у вас определены несколько
действий для одного и того же MIME, то
выполняться будет первое:
text/html; lynx -force_html %s; needsterminal;
text/html; netscape -remote openURL(%s)
Кроме того, для одного и того же
типа файлов в письмах могут быть
разные MIME. Тогда в .mailcap для всех
этих MIME приходится использовать
одинаковые описания действий.
Например, поскольку у нас стояла
задача научить mutt просматривать
вложения в виде файлов MS Word и MS Excel,
то можно в .mailcap написать следующее:
application/msword; antiword -m koi8-r.txt %s; copiousoutput
application/vnd.msword; antiword -m koi8-r.txt %s; copiousoutput
application/excel; xls2csv %s; | sed 's/,/ /g'; copiousoutput
application/msexcel; xls2csv %s; | sed 's/,/ /g'; copiousoutput
application/ms-Excel; xls2csv %s | sed 's/,/ /g'; copiousoutput
application/vnd.ms-excel; xls2csv %s | sed 's/,/ /g'; copiousoutput
application/x-excel; xls2csv %s | sed 's/,/ /g'; copiousoutput
antiword (http://www.winfield.demon.nl/)
может быть установлен из портов или
скомпилирован из исходных текстов.
xls2csv входит в состав дистрибутива
catdoc (http://www.45.free.net/~vitus/ice/catdoc/)
который тоже может быть взят из
портов, пакетов, или скомпилирован
самостоятельно.
Заключение
Мы рассмотрели самые азы
настройки mutt, которые, между тем,
позволят сразу приступить к почти
полноценной работе с электронной
почтой. Однако, очень многое из
возможностей mutt осталось за
пределами рассмотрения:
- Получение почты по POP3
- Сортировка почты по файлам
- PGP
- Адресная книга
- и т.д.
Все эти возможности без особых
проблем могут быть реализованы,
поскольку на сайте mutt даны хорошие
описания и приведено множество
примеров.