Emacs для начинающих


CHARSET и его имя, или Do you forget about Charset ?


    Как оказывается, множество пользователей и программистов никогда не задавались таким простым вопросом : каково имя собственного Charset-а. Почему ? А дело в том, что для большинства языков употребляется только один Charset. Например, для Америки en_US

- Сharset будет однозначно ASCII, а для Франции fr_FR - Charset будет однозначно ISO-8859-1. И т.д.

    Давайте не будем уподобляться и рассмотрим такой вопрос : Зачем нам нужно знать Charset

и каким образом выбирается имя

для определенного Charset-а ?

    Во-первых, зачем нам требуются имена Charset-ов ?

  • В стандарте MIME у Content-Type: определен параметр Charset

    :

    Content-Type: text/plain; charset="koi8-r"

  • В стандарте HTTP также определен параметр Charset :

    Content-Type: text/plain; charset="koi8-r"

    Content-Type: text/html; charset="koi8-r"

  • В стандарте имя Charset-а применяется при кодировании заголоков :

    Subject: Re: =?KOI8-R?Q?=C1?=

  • В POSIX locale имя Charset-а входит в название категорий локализации :

    $ export LANG=ru_RU.KOI8-R

    Таким образом, каждый Charset

должен иметь определенное имя. (Технически, имя - это строка символов.)

    К сожалению, в деле стандартизации имен Charset-ов царит некоторый беспорядок. А проблема состоит в том, что в настоящее время не существует строгого стандарта на имена Charset-ов.

    Например,  даже в стандарте ISO

для Charset-ов семейства ISO-8859 определено все : состав символов, e.t.c., но совершенно не определены правила написания имени. Поэтому, даже для имен из стандарта ISO

возможны варианты записи:

ISO8859-1
ISO-8859-1
ISO_8859-1
и т.д.

Обратите внимание на символ между буквами ISO и цифрами.

    Однако существует другая организация : , которая кроме всего прочего занимается и регистрацией Charset-ов . Там, на IANA лежит документ : .

    В данном документе определено следующее : The character set names may be up to 40 characters taken from the printable characters of US-ASCII. However, no distinction is made between use of upper and lower case letters. (Имя набора символов может достигать 40 символов ASCII. Не существует разницы между строчными и прописными буквами) Это практически все, что можно сказать о правилах образования имен Charset-ов.




- Начало -  - Назад -  - Вперед -