Новые книги

Расширьте мощность и гибкость Блендера с помощью Питона: высокоуровневого, легкого для изучения скриптового языка
Продолжение книги "Внутреннее устройство Microsoft Windows" — 5 и 7 главы.

Configuring elm

Настройка elm

elm является сокращением от "electronic mail" и является одним из наиболее приемлемых инструментальных средств Unix. Программа обеспечивает полноэкранный интерфейс с возможностью справки. Мы не будем обсуждать, здесь как использовать elm, а остановимся только на опциях конфигурации.

Теоретически, Вы можете выполнять неконфигурированный elm, и все работает хорошо, если Вы очень удачливы. Но имеются несколько опций, которые должны быть установлены.

При запуске elm читает набор переменных конфигурации из файла elm.rc в /etc/elm. Затем, она будет пытаться читать файл .elm/elmrc в Вашем домашнем каталоге. Вы обычно не должны менять этот файл самостоятельно. Он создается, когда Вы выбираете "Save new options" в меню опций elm.

Набор опций для частного файла elmrc также доступен в глобальном файле elm.rc. Большинство установок в Вашем частном файле elmrc меняют соответствующие параметры из глобального файла.

Глобальные опции elm

В глобальном файле elm.rc, Вы должны установить опции, которые относятся к имени Вашей машины. Например, в Virtual Brewery у пользователя vlager файл содержал бы следующее:

#
# The local hostname
hostname = vlager
#
# Domain name
hostdomain = .vbrew.com
#
# Fully qualified domain name
hostfullname = vlager.vbrew.com

Этот набор опций ориентирует elm относительно имени локальной машины. Хотя эта информация редко используется, Вы должны установить эти опции. Заметьте, что эти опции не будут работать в частном файле elmrc.

Национальный набор символов

Имелись предложения исправить стандарт RFC-822, чтобы поддерживать различные типы сообщений: простые текстовые, двоичные данные, файлы Postscript и т.д. Набор стандартов и RFC, покрывающий эти аспекты, обычно упоминается как MIME, или многоцелевые расширения почты Internet. Между прочим, это также позволяет получателю узнать, использовался ли набор символов, отличный от стандартного ASCII, при написании сообщения. Это до некоторой степени обеспечивается elm.

Набор символов, используемый Linux, чтобы представить символы, обычно упоминается как ISO-8859-1, что является именем стандарта, которому он соответствует. Это также известно как Latin-1. В России принят кириллический стандарт KOI-8R. Любые символы в сообщении из этого набора символов должны иметь следующую строку в заголовке:

Content-Type: text/plain; charset=iso-8859-1
Для кириллицы это будет:
Content-Type: text/plain; charset=KOI-8R

Система получателя должна распознать это поле и принять соответствующие меры при отображении сообщения. Значение по умолчанию для текстовых (text/plain) сообщений us-ascii.

.

Чтобы отображать сообщения с набором символов, отличным от ASCII, elm должен знать, как печатать эти символы. По умолчанию, когда elm получает сообщение с полем charset, отличным от us-ascii, она пробует отображать сообщение, используя команду metamail. Сообщения, которые требуют использования metamail, отображаются с меткой M в самом первом столбце в экране краткого обзора.

Так как набор символов Linux ISO-8859-1, вызов metamail не требуется для отображения сообщения, использующего этот набор символов. Если elm знает, что дисплей понимает ISO-8859-1, она не будет использовать metamail, а отобразит сообщение непосредственно. Это может быть выполнено установкой следующей опции в глобальном файле elm.rc:

displaycharset = iso-8859-1

Обратите внимание, что Вы должны установить эти опции даже, когда Вы никогда не собираетесь посылать или получать сообщения, которые фактически содержат символы, отличные от ASCII. Это потому, что люди, которые посылают такие сообщения обычно конфигурируют их своей почтовой программой, чтобы поместить соответствующее поле Content-Type: в заголовке письма. Для России следует задать поддержку кириллицы:

displaycharset = KOI-8R

Однако, установки этой опции в elm.rc недостаточно. Проблема состоит в том, что при отображении сообщения, elm вызывает библиотечную функцию для каждого символа, чтобы определить, является ли он печатаемым или нет. По умолчанию, эта функция распознает только символы ASCII, и отображает все другие символы как ^?. Вы можете преодолеть это, устанавливая переменную среды LC_CTYPE как ISO-8859-1. Это сообщает, что библиотека приняла символы Latin-1 как печатаемые. Для России надо задать LC_CTYPE как KOI-8R. Поддержка этой и ряда других возможностей появилась в стандартной библиотеке Linux, начиная с библиотек версии 4.5.8.

При посылке сообщений, которые содержат специальные символы из ISO-8859-1, Вы должны удостовериться, что установлены еще две переменные в файле elm.rc:

charset = iso-8859-1
textencoding = 8bit

Это заставит elm сообщить набор символов как ISO-8859-1 в заголовке почты и посылать это письмо как 8 битовое (по умолчанию все символы имеют 7 бит). Для России это очень важно, поскольку по умолчанию elm срезает верхний (восьмой) бит каждого символа, а для кириллицы этого допустить нельзя!

Конечно, любая из этих опций может также быть установлена в частном файле elmrcc вместо глобального.