Есть один весьма удобный консольный почтовый клиент - Alpine, о некоторых фичах которого пойдёт речь в этой заметке. Раньше он назывался Pine и создан в University of Washington.
1. Переносы строк.
При настройках по-умолчанию Alpine имеет одно странное свойство - если в конце строки перед переводом строки оставить пробел, то, несмотря на то, что при отправке письмо выглядит нормально разбитым на строки, при получении письма следующая строка после строки с пробелом в конце будет отображена как продолжение той первой (что с пробелом). Вот на скриншотах пример такого кривого поведения. У отправителя:
У получателя:
Здесь видно, что фрагмент "Это слова из строки N2" в почтовом клиенте получателя отобразились как продолжение предыдущей строки. Это очень раздражает, когда отправляешь какой-то форматированный текст, например, вывод mtr - всё съезжает и ничего разобрать нельзя из того, что хотел сказать аффтар. Поэтому аффтару нужно следить за тем, чтобы в конце каждой строки не было пробелов (если он хочет чтобы разбиение текста на строки у получателя было точно таким же как у него). Вот пример правильно отформатированного письма. У отправителя:
У получателя:
Тут обе строки одинаково отображаются как у отправителя, так и у получателя, поскольку отправитель проследил за тем, чтобы в конце строк не было пробелов.
Но, к счастью, такое поведение лишь при настройках по-умолчанию, которые можно изменить. Чтобы Alpine шибко не умничал и оставлял переносы строк в точности там, где мы их поставили, нужно включить опцию "Do Not Send Flowed Text" (в главном меню выбираем Setup, потом Config). Тогда независимо от наличия пробелов в конце строки следующая строка у получателя отобразится реально как следующая.
2. Автоматическая проверка орфографии.
Чтобы перед отправкой письмо проверялось на наличие ошибок, нужно установить какой-то spell-checker, например aspell, и указать Alpine его использовать. В случае с aspell это делается так: идем из главного меню в Setup, потом Config, потом ищем опцию "Spell Check Before Sending" и включаем её, далее ищем параметр "Speller" и устанавливаем его значение в
/usr/bin/aspell --dont-backup --mode=email check -l ru_RU
Путь, естественно, нужно поправить чтобы соответствовал Вашей системе. Через параметр -l задаётся язык проверямого текста. Тогда при нажатии комбинации Ctrl-X в случае, если aspell посчитает, что хоть одно слово в письме написано неправильно, вылезет такая вот менюшка:
При нажатии клавиш 0-9 подсвеченное слово замениться на соответствующий предложенный aspell-ом вариант. При нажатии клавиши r (Replace) aspell попросит набрать слово для замены. При нажатии a (Add) или l (Add Lower) подсвеченное слово внесётся в пользовательский словарь и в дальнейшем будет считаться правильным. Разница между a и l в том, что при Add Lower слово будет внесено в нижнем регистре, а при просто Add - так, как встретилось в тексте. Если же в тексте всё правильно, то письмо просто отправиться как обычно.
3. Сортировка писем "нитями"
Чтобы письма при переписке по одному и тому же вопросу отображались вместе, а не в порядке поступления, как происходит по-умолчанию, удобно использовать сортировку Thread-ами. Для этого в окне индекса нужно нажать Shift-4, затем H. Тогда Alpine по заголовкам Subject и In-Reply-To будет отслеживать письма на одну и ту же тему и отображать их примерно так: