Provided by: manpages-ru_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       unicode - универсальный набор символов

ОПИСАНИЕ

       The  international  standard  ISO/IEC  10646 defines the Universal Character Set (UCS).  UCS contains all
       characters of all other character set standards.  It also guarantees "round-trip compatibility"; in other
       words, conversion tables can be built such that no information is lost when a string  is  converted  from
       any other encoding to UCS and back.

       UCS  содержит символы, необходимые для представления практически всех известных сейчас языковых символов.
       В него включены не  только  языковые  символы  из  латинской,  греческой,  кириллицы,  иврита,  арабской,
       армянской,  грузинской  письменности, но и китайские, японские и корейские идеограммы, а также символы из
       таких письменностей как хирагана, катакана, хангул, деванагари, бенгальской,  гурмуки,  гуджарати,  ория,
       тамильской,   телугской,  каннада,  малаяламской,  тайской,  лаосской,  кхмерской,  бопомофо,  тибетской,
       рунической,  эфиопской,  канадского  слогового  письма,  чероки,  монгольской,   охамской,   мьянмарской,
       синхальской,таанской, юи и других. По ещё не включённым письменностям постоянно ведутся работы для поиска
       их  самой  оптимальной  кодировки  для  компьютеров  и  добавлении.  К  ним относятся не только различные
       иероглифы и письменности из индо-европейской исторической группы, но  и  некоторые  искусственные  языки,
       такие как тенгвар, сирт и клингонский. Также UCS содержит большое множество графических, типографических,
       математических  и  научных  символов,  используемых в таких программах, как TeX, Postscript, APL, MS-DOS,
       MS-Windows, Macintosh, шрифтах OCR и многих других текстовых процессорах и издательских системах.

       The UCS standard (ISO/IEC 10646) describes a 31-bit character set architecture consisting of  128  24-bit
       groups,  each divided into 256 16-bit planes made up of 256 8-bit rows with 256 column positions, one for
       each character.  Part 1 of the standard (ISO/IEC 10646-1)  defines the first 65534 code positions (0x0000
       to 0xfffd), which form the Basic Multilingual Plane (BMP), that is plane 0 in group 0.   Part  2  of  the
       standard (ISO/IEC 10646-2)  adds characters to group 0 outside the BMP in several supplementary planes in
       the  range  0x10000  to  0x10ffff.  There are no plans to add characters beyond 0x10ffff to the standard,
       therefore of the entire code space, only a small fraction of group 0 will ever be actually  used  in  the
       foreseeable  future.   The  BMP  contains all characters found in the commonly used other character sets.
       The supplemental planes  added  by  ISO/IEC  10646-2  cover  only  more  exotic  characters  for  special
       scientific, dictionary printing, publishing industry, higher-level protocol and enthusiast needs.

       Представление  каждого  символа  в  UCS в виде -байтного слова называют формой UCS-2 (только для символов
       BMP), UCS-4 называют представление каждого символа 4-байтным словом. Также существуют 2 формы  кодировки:
       UTF-8 — для совместимости со старым ПО, работающим с кодировкой ASCII, и UTF-16 — для совместимости с ПО,
       работающим с кодировкой UCS-2, для не BMP символов до 0x10ffff позиции.

       The  UCS characters 0x0000 to 0x007f are identical to those of the classic US-ASCII character set and the
       characters in the range 0x0000 to 0x00ff are identical to those in ISO/IEC 8859-1 (Latin-1).

   Комбинирующие символы
       Некоторые позиции в UCS зарезервированы для комбинирующих  символов.  Они  аналогичны  клавишам  печатной
       машинки,  которые  служат  для  набора  букв  с ударением. Комбинирующий символ лишь добавляет ударение к
       предыдущему символу. Наиболее употребляемые символы, требующие ударения, имеют  собственный  код  в  UCS,
       однако  комбинирующий символ позволяет добавить ударение или другой диакритический знак к любому символу.
       Комбинирующие символы всегда указываются после буквы, которую они  изменяют.  Например,  немецкий  символ
       «умляут-А»  (латинская  заглавная  буква  А  с  диерезой)  может  быть  представлен как зарезервированный
       специальный символ UCS с кодом 0x00c4, или как комбинация обыкновенной «латинской заглавной  буквы  А»  и
       последующей «комбинирующей диерезы: 0x0041 0x0308.

       Комбинирующие  символы  являются  необходимым  инструментом  для  кодирования  символов  тайского  языка,
       математики и для пользователей международного фонетического алфавита (International Phonetic Alphabet).

   Уровни реализации
       As not all systems are expected to support advanced mechanisms like combining characters, ISO/IEC 10646-1
       specifies the following three implementation levels of UCS:

       Уровень 1
                Комбинирующие символы и символы Hangul Jamo (вариант  кодировки  корейского  письма,  где  слоги
                хангыль кодируются по два или по три гласных кода) не поддерживаются.

       Уровень 2
                В  дополнении  к  символам  уровня  1 комбинирующие символы разрешено использовать для некоторых
                языков,  в  которых  они  важны  (например:  тайский,  лаосский,  иврит,  арабский,  деванагари,
                малаяламский).

       Уровень 3
                Поддерживаются все символы UCS.

       The  Unicode 3.0 Standard published by the Unicode Consortium contains exactly the UCS Basic Multilingual
       Plane at  implementation  level  3,  as  described  in  ISO/IEC  10646-1:2000.   Unicode  3.1  added  the
       supplemental  planes  of  ISO/IEC  10646-2.   The Unicode standard and technical reports published by the
       Unicode Consortium provide much additional information on the semantics and recommended usages of various
       characters.  They provide  guidelines  and  algorithms  for  editing,  sorting,  comparing,  normalizing,
       converting, and displaying Unicode strings.

   Юникод в Linux
       В  системах  GNU/Linux  тип языка Cи wchar_t является 32-битным знаковым целым типом. Его значения всегда
       интерпретируются библиотекой Си как значения кодов  UCS  (во  всех  локалях);  в  этом  случае,  согласно
       стандарту ISO C99, библиотека GNU C определяет константу __STDC_ISO_10646__.

       UCS/Unicode  может  использоваться  подобно  ASCII  в  потоках ввода/вывода, соединениях с терминалами, в
       текстовых файлах, названиях файлов и  в  переменных  окружения  в  виде  многобайтовой  кодировке  UTF-8,
       совместимой  с  ASCII.  Для обозначения использования UTF-8 как кодировки во всех приложениях должна быть
       выбрана подходящая локаль через переменные окружения (например, «LANG=ru_RU.UTF-8»).

       The nl_langinfo(CODESET) function returns the name of the selected encoding.  Library functions  such  as
       wctomb(3)   and  mbsrtowcs(3)   can be used to transform the internal wchar_t characters and strings into
       the system character encoding and back and wcwidth(3)  tells how  many  positions  (0–2)  the  cursor  is
       advanced by the output of a character.

   Закрытые используемые области (Private Use Areas, PUA)
       В  основной многоязычной матрице диапазон с 0xe000 до 0xf8ff никогда не будет использован для обозначения
       стандартных символов, он зарезервирован для частного использования. В Linux эта закрытая область  делится
       на: диапазон 0xe000 по 0xefff может использоваться конечным пользователем; диапазон 0xf000 по 0xf8ff (так
       называемая  зона  Linux)  может использоваться для расширений, согласованных среди пользователей Linux. В
       настоящее время регистрацией символов в зоне Linux занимается LANANA, а  сам  реестр  находится  в  файле
       Documentation/admin-guide/unicode.rst  исходного  кода  ядра  Linux (в Documentation/unicode.txt до Linux
       4.10).

       Две другие плоскости зарезервированы для закрытого использования, плоскость 15  (дополнительная  закрытая
       используемая  область-A,  диапазон  от  0xf0000  до  0xffffd)  и  плоскость  16  (дополнительная закрытая
       используемая область-B, диапазон от 0x100000 до 0x10fffd).

   Литература
       •  Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and
          Basic Multilingual Plane.  International Standard  ISO/IEC  10646-1,  International  Organization  for
          Standardization, Geneva, 2000.

          This is the official specification of UCS.  Available from http://www.iso.ch/.

       •  The  Unicode  Standard,  Version 3.0.  The Unicode Consortium, Addison-Wesley, Reading, MA, 2000, ISBN
          0-201-61633-5.

       •  S. Harbison, G. Steele. C: A Reference Manual. Fourth edition, Prentice Hall, Englewood Cliffs,  1995,
          ISBN 0-13-326224-3.

          Хорошая  книга  о программировании на языке Си. Четвёртое издание включает в себя описание поправки 1,
          сделанной в стандарте ISO C90 в 1994 году. Эта поправка добавляет к стандарту большое количество новых
          библиотечных функций Си для поддержки кодирования широких и многобайтовых  символов,  но  она  не  так
          полна как стандарт ISO C99, который расширяет поддержку широких и многобайтовых символов.

       •  Unicode Technical Reports.
          http://www.unicode.org/reports/

       •  Markus Kuhn: UTF-8 and Unicode FAQ for UNIX/Linux.
          http://www.cl.cam.ac.uk/~mgk25/unicode.html

       •  Bruno Haible: Unicode HOWTO.
          http://www.tldp.org/HOWTO/Unicode-HOWTO.html

СМОТРИТЕ ТАКЖЕ

       locale(1), setlocale(3), charsets(7), utf-8(7)

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства  разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>,
       Dmitriy Ovchinnikov <dmitriyxt5@gmail.com>, Dmitry Bolkhovskikh  <d20052005@yandex.ru>,  Katrin  Kutepova
       <blackkatelv@gmail.com>,  Yuri  Kozlov  <yuray@komyakino.ru>,  Иван  Павлов  <pavia00@gmail.com> и Kirill
       Rekhov <krekhov.dev@gmail.com>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите  об  этом
       разработчику(ам)   по   его(их)  адресу(ам)  электронной  почты  или  по  адресу  списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                       unicode(7)