BASH Programming - Введение

Использования кириллицы в программах электронной почты и чтения новостей


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

Обычно программы Internet электронной почты состоят из двух частей: MUA (Mail User Agent -- пользовательская программа электронной почты) и MTA (Mail Transfer Agent -- программа рассылки электронной почты). MUA - это программа, которую вы используете для чтения, составления и посылки электронных сообщений. Однако пользовательская программа электронной почты сама письма не посылает; вместо этого она вызывает программу рассылки электронной почты, которая отвечает за посылку сообщения в соответствующем направлении, используя соответствующий протокол. Пример пользовательской программы электронной почты -- Pine, программы рассылки электронной почты -- qmail.

До недавнего времени и MTA, и MUA по умолчанию не были чисто 8-ми битными программами. Поэтому, когда вы посылаете сообщение, скажем, из Америки в Россию, то вы никогда не будете уверены в том, что какая-нибудь промежуточная программа рассылки электронной почты не "откусит" в вашем сообщении 8-ой бит у каждой буквы в вашем сообщении. Поэтому был разработан ряд протоколов, которые позволяют закодировать любой тип данных с использованием только печатаемых символов из 7-ми битного ASCII. Эта группа протоколов зовется MIME (MultimedIa Mail Encoding -- мультимедийная кодировка электронных сообщений).

Так как MIME обычно сконфигурирован по умолчанию довольно правильно, мы не будем обсуждать его здесь. Мы поговорим о MIME, когда будет обсуждаться совместимость между русскими кодировками (См. раздел ).

Мы начнем с настройки пользовательской программы электронной почты, потому что именно с этой программой вы работаете непосредственно. Ей нужно указать:

  1. что письма будут содержать 8-битные символы,
  2. с какой кодировкой вы работаете, и
  3. с какой кодировкой письма будут посылаться.
  4. Кодировки нужно обозначать не произвольными именами, а согласно рекомендаций IANA.

    Конечно, указывая кодировку для посылаемых писем, вы должны действовать соответственно существующим стандартами. Стандарт для России: для электронной почты используется KOI8-R, именем этой кодировки согласно рекомендаций IANA является koi8-r. В Болгарии же для электронной почты используется кодировка cp1251, имя согласно IANA -- windows-1251.

    (Письма, которые получал (и посылал) Антон Зиновьев в Сербию и Македонию, использовали кодировку ISO-8859-5. Но потребители Windows вряд ли используют ISO-8859-5 -- так что какая кодировка является стандартом для этих стран, совершенно не понятно.)

    Дополнение: Довольно часто случается так, что те, кто посылают вам письма, неправильно настраивают (или не настраивают вообще, а по умолчанию стоит черте-че -- пример Outlook) свои почтовые программы. В заголовках писем вместо windows-1251 чаще всего стоит iso-8859-1, US-ASCII или UNKNOWN-8BIT. Для исправления получаемых писем создайте файл ~/.procmailrc со следующим содержанием (но я предупреждаю вас, что после ошибки в ~/.procmailrc вы можете потерять всю вашу почту):

    :0 fHw * ^Content-Type: *text/plain; *charset="?(iso-8859-1|US-ASCII|UNKNOWN-8BIT)"? | formail -i "Content-Type: text/plain; charset=windows-1251"



    Содержание раздела