File: charsets.7

package info (click to toggle)
manpages-fr 0.9.3-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 7,052 kB
  • ctags: 4
  • sloc: makefile: 58; sh: 8
file content (251 lines) | stat: -rw-r--r-- 11,703 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
.\" Copyright (c) 1996 Eric S. Raymond <esr@thyrsus.com>
.\"                and Andries Brouwer <aeb@cwi.nl>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" This is combined from many sources, including notes by aeb and
.\" research by esr.  Portions derive from a writeup by Ramon Czybora.
.\"
.\" Traduction 22/11/1996 par Christophe Blaess (ccb@club-internet.fr)
.\" m�j 15/09/98 LDP-man-pages-1.20
.\" maj 07/01/2000 LDP-man_pages 1.28 (Passage section 4 -> section 7)
.\" Mise � jour 06/06/2001 - LDP-man-pages-1.36
.TH CHARSETS 7 "6 juin 2001" Linux "Manuel du programmeur Linux" 
.SH NOM
charsets \- Jeux de caract�res et internationalisation pour les programmeurs.
.SH DESCRIPTION
Linux est un syst�me d'exploitation international. Plusieurs de ses utilitaires
et de ses gestionnaires de p�riph�riques (y compris le gestionnaire de console)
supportent les jeux de caract�res multilingues contenant les lettres de
l'alphabet Latin avec des accents et des liaisons, et des alphabets non-Latin
complets comme le Grec, le Cyrillique, l'Arabe ou l'H�breu.
.LP
Cette page de manuel pr�sente le point de vue du programmeur sur les diff�rents
jeux de caract�res, et comment ils s'organisent sous Linux. Les standards
pr�sent�s comprennent l'ASCII, l'ISO 8859, le KOI8-R, l'Unicode, l'ISO 2022 et
l'ISO 4873.

.SH ASCII
L'ASCII (American Standard Code For Information) 
est le jeu de caract�res 7-bits original, pr�vu pour l'anglais (am�ricain).
Il est d�crit actuellement dans le standard ECMA-6.
.LP
Une variante ASCII rempla�ant le symbole americain "di�se" par le symbole
anglais "livre sterling" est utilis� en Grande Bretagne. Si besoin,
on identifie les variantes am�ricaines et britanniques en utilisant les
termes "ASCII US" et "ASCII UK".
.LP
Comme Linux est �crit sur du mat�riel con�u pour les Etats-Unis, il supporte
l'ASCII US de mani�re native.

.SH ISO 8859
L'ISO 8859 est une s�rie de 10 jeux de caract�res 8 bits, contenant
l'ASCII US dans leur premi�re moitie (7 bits), des caract�res de
contr�le non-imprimables entre les positions 128 et 159, et 96
symboles graphiques de largeur fixe aux emplacements 160 � 255.
.LP
De tous ces jeux, le plus important ([NDT] notamment pour nous !) est
l'ISO 8859-1 (Latin-1).  Il est supporte de mani�re native par le gestionnaire
de console Linux, assez bien support� par X11R6, et c'est le jeu de
caract�res de base pour l'HTML.
.LP
Le support console des autres jeux de caract�res 8859 est disponible 
sous Linux, � travers des utilitaires comme
.BR setfont (8),
qui modifient la correspondance des touches du clavier, la table
graphique EGA, et utilisent une projection personnalis�e de la table
de fonte du gestionnaire de console.
.LP
Voici une br�ve description des jeux de caract�res 8859 :
.TP
8859-1 (Latin-1) 
Le Latin-1 couvre la plupart des langues d'Europe de l'Ouest, comme
l'Albanais, l'Allemand, l'Anglais, le Catalan, le Danois, l'Espagnol,
le Faroese [NDT ???], le Finnois, le Fran�ais, le Gallois, le Hollandais, 
l'Irlandais, l'Islandais, l'Italien, le Norv�gien, le Portugais et le
Su�dois. Le manque de liaison entre les "ij" hollandais, entre les "oe"
fran�ais, et l'absence des anciens guillemets ,,Allemands`` est tol�rable.
.TP
8859-2 (Latin-2)
Le Latin-2 contient la plupart des langues slaves d'Europe de l'Est
utilisant l'alphabet Latin : Allemand, Croate, Hongrois, Polonais, Roumain,
Slovaque, Slov�nien, et Tch�que.
.TP
8859-3 (Latin-3)
Le  Latin-3 est utilise pour les textes en Esperanto, Galois, Maltais, et Turc.
.TP
8859-4 (Latin-4)
Le Latin-4 introduit des lettres pour l'Estonien et le Lithuanien. Il est
presque obsol�te, remplac� par 8859-10 (Latin-6).
.TP
8859-5 
L'alphabet ciryllique est utilis� en Bulgare, Bi�lorusse, Macedonien, Russe,
Serbe et Ukrainien. Les ukrainiens prononcent la lettre `ghe' ferm�e, comme
`heh' et aurait besoin d'un accent pour distinguer le `ghe' correct. Voir les
remarques concernant le KOI8-R ci-dessous.
.TP
8859-6
Supporte l'Arabe. La table 8859-6 est une fonte de caract�res de largeurs
fixes, mais un affichage correct doit combiner les lettres en utilisant
leurs formes initiale, centrale et finale.
.TP
8859-7
Supporte le grec moderne.
.TP
8859-8
Supporte l'H�breu.
.TP
8859-9 (Latin-5)
Il s'agit d'une variante du Latin-1 qui remplace les lettres Islandaises
rarement utilis�es par des lettres Turques.
.TP
8859-10 (Latin-6) 
Le  Latin 6 ajoute les derni�res lettres Inuit (Groenland) et Sami (Lappon)
qui manquaient dans le Latin 4 pour couvrir toute la zone nordique.
La RFC 1345 indique un latin 6 plus ancien et diff�rent. Le Sami n�cessite
en r�alite plus d'accents que ceux propos�s.
.TP
8859-13 (Latin-7)
.TP
8859-14 (Latin-8)
.TP
8859-15
Dans ce jeu se trouve le symbole euro et les ligatures fran�aises
qui manquaient dans le Latin-1.
.SH KOI8-R
Le KOI8-R est un jeu de caract�res non-ISO tr�s r�pandu en Russie.
La premi�re moiti� correspond a l'ASCII US, la seconde est un jeu de
caract�re cyrillique un peu mieux con�u que l'ISO 8859-5.  
.LP
Le support console du KOI8-R est disponible 
sous Linux, � travers des utilitaires comme
.IR setfont (8),
qui modifient la correspondance des touches du clavier, la table
graphique EGA, et utilisent une projection personnalis�e de la table
de fonte du gestionnaire de console.
.SH UNICODE
L'Unicode (ISO 10646) est un standard destin� � repr�senter sans ambigu�t�
tous les signes �crits de toutes les langues humaines connues.
L'encodage natif Unicode est sur 32 bits (des versions plus anciennes
�taient sur 16 bits). Des informations suppl�mentaires sur l'Unicode sont
disponibles sur <http://www.unicode.org>.
.LP
Linux repr�sente l'Unicode en utilisant le format de tranfert sur 8 bits
(UTF-8). L'UTF-8 est un codage � longueur variable.  Il utilise un octet
pour coder 7 bits, 2 octets pour 11 bits, 3 octets pour 16 bits, 4 octets
pour 21 bits, 5 octets pour 26 bits, 6 octets pour 31 bits.
.LP
Repr�sentons par 0,1,x des bits � 0, a 1, ou quelconque.
Un octet 0xxxxxxx correspond � l'Unicode 00000000 0xxxxxxx 
qui indique le m�me symbole que l'ASCII 0xxxxxxx.  
Ainsi, ASCII n'est pas modifi� par UTF-8, et les gens utilisant uniquement
l'ASCII ne remarqueront aucun changement : ni dans le codage, ni dans les
tailles de fichiers.
.LP
Un octet 110xxxxx repr�sente le d�but d'un code sur 2-octets code, et
110xxxxx 10yyyyyy est assembl� en 00000xxx xxyyyyyy.
Un octet 1110xxxx correspond au d�but d'un code sur 3 octets,
et 1110xxxx 10yyyyyy 10zzzzzz sont assembl�s en xxxxyyyy yyzzzzzz.
(Quand l'UTF-8 est utilis� pour coder les 31 bits de l'ISO 10646
cette progression continue jusqu'� des codes sur 6 octets.)
.LP
Pour les utilisateurs de l'ISO-8859-1, ceci signifie
que les caract�res avec le bit de poids fort � 1 sont d�sormais cod�s
sur deux octets. Ceci tend � allonger les fichiers de texte ordinaires de
1 a 2 pour cent ([NDT] Dans quel langue ? Il y a plus d'un �
deux pour cent de caract�res accentu�s en fran�ais !). Il n'y a pas
de probl�mes de conversion n�anmoins, car les symboles Unicode
correspondant aux caract�res ISO-8859-1 conservent les m�mes valeurs
(�tendues avec 8 bits � z�ro en tete).
Pour les utilisateurs japonais, ceci signifie que les codes sur 16 bits
courrament employ�s prendront d�sormais 3 octets, et que les tables
de transcodage devront �tre �tendues. D'ailleurs de nombreux japonais
pr�f�rent le standard ISO 2022.
.LP
Remarquez que l'UTF-8 se synchronise automatiquement : 10xxxxxx 
est le corps ou la fin d'un code, et tout autre octet est un d�but de code.
Notez �galement que les octets ASCII dans un flux UTF-8 ne peuvent que
repr�senter les caract�res ASCII correspondants. En particulier il n'y a
pas de caract�res NULs ou '/' pour introduire un code �tendu.
.LP
Comme l'ASCII, et en particulier NUL et '/', ne sont pas modifi�s, le
noyau ne remarque pas que l'UTF-8 est utilis�. Il n'a pas � se
pr�occuper de la signification des octets qu'il manipule.
.LP
La gestion des flux de donn�es Unicode est g�n�ralement effectu�e � travers
des tables de "sous-fontes" correspondant � un sous-ensemble des caract�res
Unicode. En interne, le noyau utilise l'Unicode pour d�crire les sous-fontes
charg�es en m�moire vid�o. Ce signifie qu'en mode UTF-8, on peut utiliser
le jeu de caract�res japonais avec 512 symboles diff�rents. Ce n'est pas
assez pour le Japonais, le Chinois ou le Cor�en, mais c'est generalement
suffisant pour toutes les autres utilisations.

.SH "ISO 2022 et ISO 4873"
Les standards ISO 2022 et 4873 d�crivent un mod�le de contr�le des fontes
bas� sur le fonctionnement du VT100. Ce mod�le est (partiellement) support�
par le noyau Linux et
.BR xterm (1).
Il est assez populaire au Japon et en Cor�e.
.LP
Il existe 4 jeux de caract�res graphiques, nomm�s G0, G1, G2 et G3,
l'un d'entre eux est utilis� comme jeu de caract�res en cours pour
les codes avec le bit de poids fort � 0 (par d�faut G0), et un autre
est utilis� pour les codes avec le bit de poids fort � 1 (initialement G1).
Chaque ensemble dispose de 94 ou 96 caract�res,
et est constitu� de caract�res sur 7 bits. Ce mod�le utilise soit les
codes 040-0177 (041-0176) soit les codes 0240-0377 (0241-0376).
G0 a toujours une taille de 94 caract�res et utilise les codes 041-0176.
.LP
Le basculement entre les jeux de caract�res est effectu� � travers les
s�quences ^N (SO ou LS1), ^O (SI ou LS0), ESC n (LS2), ESC o (LS3),
ESC N (SS2), ESC O (SS3), ESC ~ (LS1R), ESC } (LS2R), ESC | (LS3R).
La fonction LS\fIn\fP r�clame le jeu G\fIn\fP pour les codes dont le
bit de poids fort est � z�ro.
La fonction S\fIn\fP demande le jeu G\fIn\fP pour les codes dont le bit
de poids fort est � un.
La fonction SS\fIn\fP r�clame le jeu G\fIn\fP (\fIn\fP=2 ou 3)
pour le caract�re suivant uniquement (quelque soit la valeur du bit de
poids fort).
.LP
Un jeu de 94 caract�res est d�sign� comme jeu G\fIn\fP par une s�quence
ESC ( xx (pour G0), ESC ) xx (pour G1), ESC * xx (pour G2), 
ESC + xx (pour G3), o� xx est un symbole, ou une paire de symboles
du standard ISO 2375 International Register of Coded Character Sets.
Par exemple, ESC ( @ s�lectionne le jeu ISO 646 en tant que G0,
ESC ( A selectionn� le jeu standard UK (avec la livre sterling � la place
du di�se), ESC ( B s�lectionne l'ASCII, ESC ( M s�lectionne un jeu de
caract�res Africains, ESC ( ! A s�lectionne les caract�res Cubains, etc...
.LP
Un jeu de 96 caract�res est d�sign� comme jeu G\fIn\fP par une s�quence
ESC - xx (pour G1), ESC . xx (pour G2) ou ESC / xx (pour G3).
Par exemple, ESC - G s�lectionne l'alphabet Hebreu comme G1.
.LP
Un jeu de caract�res multi-octets est d�sign� comme jeu G\fIn\fP
par une s�quence ESC $ xx ou ESC $ ( xx (pour G0), ESC $ ) xx (pour G1),
ESC $ * xx (pour G2), ESC $ + xx (pour G3).
Par exemple, ESC $ ( C s�lectionne les caract�res Cor�ens pour le jeu G0.
Le jeu de caract�res Japonais s�lectionn� par ESC $ B dispose d'une version
plus r�cente s�lectionn�e par ESC & @ ESC $ B.
.LP
L'ISO 4873 r�clame une utilisation pr�cise des jeux de caract�res,
dans laquelle G0 est fix� (toujours l'ASCII), ainsi seuls G1, G2 et G3
peuvent �tre invoqu�s pour les codes avec un bit de poids fort � 1.
En particulier, ^N et ^O ne sont plus utilis�s, ESC ( xx
peut seulement �tre utilis� avec xx=B, et ESC ) xx, ESC * xx, ESC + xx
sont �quivalents � ESC - xx, ESC . xx, ESC / xx, respectivement.

.SH "VOIR AUSSI"
.BR console (4),
.BR console_ioctl (4),
.BR console_codes (4),
.BR ascii (7),
.BR iso_8859_1 (7),
.BR unicode (7),
.BR utf-8 (7).


.SH TRADUCTION
Christophe Blaess, 1997.