Provided by: manpages-cs_4.27.0-1_all 

JMÉNO
unicode - univerzální znaková sada
POPIS
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 obsahuje znaky potřebné pro téměř všechny známé jazyky. Mimo jiné je to mnoho jazyků využívajících
rozšíření latinky a také následující jazyky a písma: řečtinu, azbuku, hebrejštinu, arabštinu, arménštinu,
gruzínštinu, japonštinu, čínštinu, korejské ideogramy Han, písma Hiragana, Katakana, Hangul, Devangari,
Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, Malayalam, thajštinu, Lao, Khmer, Bopomofo,
tibetštinu, runové písmo, etiopštinu, kanadské slabiky, Cherokee, mongolštinu, Ogham, barmštinu,
sinhálštinu, Thaana, Yi a mnoho jiných. Pracuje se na vložení dalších písem jako hieroglyfy a různé
historické indoevropské jazyky, eventuálně by mohly být začleněny některé umělé jazyky, jako Tengwar,
Cirth a klingonština. UCS navíc ke znakům pro tyto jazyky obsahuje grafické, typografické, matematické a
vědecké symboly používané např. v TeXu, PostScriptu, APL, MS-DOSu, MS-Windows, Macintosh, OCR, stejně tak
jako v mnoha systémech pro zpracování textu a publikování, které neustále přibývají.
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.
Reprezentaci každého UCS znaku jako dvoubajtového slova se říká UCS-2 forma (jen pro znaky z BMP),
zatímco UCS-4 je reprezentace každého znaku čtyřbajtovým slovem. Navíc existují dvě formy kódování: UTF-8
pro zpětnou kompatibilitu s programy zpracovávajícími ASCII a UTF-16 pro zpětně kompatibilní zpracování
znaků mimo BMP až do 0x10ffff programy používajícími UCS-2.
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).
Spojování znaků
Některé kódy v UCS jsou přiřazeny tzv. akcentům. Tyto jsou podobné neposouvajícím znakům na psacím
stroji. Akcent modifikuje předchozí znak. Nejdůležitější znaky s akcenty sice mají své vlastní kódy v
UCS, ale akcentové znaky dovolují přidat libovolné diakritické znaménko k libovolnému znaku. Akcent vždy
následuje znak, který je modifikován. Například, německý znak Umlaut-A ("Velké A v latince s umlautem")
může být reprezentován pomocí kódu UCS 0x00c4 a nebo alternativně jako kombinace normálního velkého A,
následovaného akcentem umlaut: 0x0041 0x0308.
Akcenty jsou nezbytné např. pro thajské písmo, pro matematické tisky a pro uživatele Mezinárodní
fonetické abecedy.
Úrovně implementace
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:
Level 1 Akcenty a znaky Hangul Jamo (speciální, komplikované kódování korejského písma, kde jsou
jednotlivé symboly dány jako sekvence dvou či tří znaků) nejsou podporovány.
Level 2 Jako level 1, přičemž některé kombinující znaky jsou povoleny (např. pro thajštinu, Lao,
hebrejštinu, arabštinu, Devangari, Malayalam).
Level 3 Všechny znaky z UCS jsou povoleny.
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.
Unicode pod Linuxem
V GNU/Linuxu je datový typ jazyka C wchar_t definován jako 32 bitový integer. Knihovna jazyka C jeho
hodnoty vždy interpretuje jako kódové hodnoty UCS (ve všech locale), což je konvence, kterou GNU knihovna
jazyka C oznamuje aplikacím definováním konstanty __STDC_ISO_10646__, tj. tak, jak to určuje standard ISO
C99.
UCS/Unicode může být, stejně jako ASCII, používáno ve vstupních a výstupních proudech, terminálové
komunikaci, souborech prostého textu, názvech souborů a proměnných prostředí prostřednictvím ASCII
kompatibilního vícebajtového kódování UTF-8. K užívání UTF-8 jako kódování znaků pro všechny aplikace je
třeba vybrat vhodné locale pomocí proměnných prostředí (např. "LANG=en_GB.UTF-8").
Funkce nl_langinfo(CODESET) vrací název zvoleného kódování. Knihovní funkce jako wctomb(3) a
mbsrtowcs(3) mohou být použity ke konverzi interního typu wchar_t do kódování používaného systémem a
naopak. Funkce wcwidth(3) říká, kolik o pozic (0–2) postoupil kurzor po vytištění znaku.
Private Use Areas (PUA)
In the Basic Multilingual Plane, the range 0xe000 to 0xf8ff will never be assigned to any characters by
the standard and is reserved for private usage. For the Linux community, this private area has been
subdivided further into the range 0xe000 to 0xefff which can be used individually by any end-user and the
Linux zone in the range 0xf000 to 0xf8ff where extensions are coordinated among all Linux users. The
registry of the characters assigned to the Linux zone is maintained by LANANA and the registry itself is
Documentation/admin-guide/unicode.rst in the Linux kernel sources (or Documentation/unicode.txt before
Linux 4.10).
Two other planes are reserved for private usage, plane 15 (Supplementary Private Use Area-A, range
0xf0000 to 0xffffd) and plane 16 (Supplementary Private Use Area-B, range 0x100000 to 0x10fffd).
Literatura
• 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.
Dobrá referenční kniha o jazyku C. Čtvrté vydání také zahrnuje dodatek 1 z roku 1994 ke standardu ISO
C 90, který přidává mnoho knihovních funkcí pro práci s wide-byte a multi-byte kódováními, ale ještě
nezahrnuje ISO C99, které dále zlepšilo podporu těchto kódování.
• Technické zprávy Unicode.
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
DALŠÍ INFORMACE
locale(1), setlocale(3), charsets(7), utf-8(7)
PŘEKLAD
Překlad této příručky do češtiny vytvořili Jiří Pavlovský <pavlovsk@ff.cuni.cz> a Pavel Heimlich
<tropikhajma@gmail.com>
Tento překlad je bezplatná dokumentace; Přečtěte si GNU General Public License Version 3 nebo novější
ohledně podmínek autorských práv. Neexistuje ŽÁDNÁ ODPOVĚDNOST.
Pokud narazíte na nějaké chyby v překladu této příručky, pošlete e-mail na adresu translation-team-
cs@lists.sourceforge.net.
Linux man-pages 6.9.1 2. května 2024 unicode(7)