File: charsets.7

package info (click to toggle)
manpages-pt 20011020-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 3,052 kB
  • ctags: 5
  • sloc: makefile: 49
file content (236 lines) | stat: -rw-r--r-- 10,534 bytes parent folder | download | duplicates (6)
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
.\" -*- nroff -*-
.\" 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.
.\"
.TH CHARSETS 7 "5/11/1996" "Linux" "Manual do Programador Linux"
.SH NOME
charsets \- Conjuntos de caracteres e internacionalizao do ponto de vista do programador
.SH DESCRIO
O linux  um sistema operacional internacional. Vrios de seus utilitrios
e drivers (inclusive o driver do console) suportam vrios conjuntos de caracteres,
inclusive acentos, ligaduras e marcaes diacrticas;
alm de outros alfabetos, inclusive o
grego, cirlico, rabe e hebraico.
.LP
Esta pgina d uma viso orientada ao programador das diferentes 
normas de conjuntos de caracteres, explicando como elas se encaixam no linux.
Os padres abordados incluem ASCII, ISO 8859, KOI8-R, Unicode, ISO 2022 e
ISO 4873.

.SH ASCII
ASCII (American Standard Code For Information Interchange)  um conjunto de caracteres
de 7 bits originalmente criado para o ingls americano. Atualmente
 descrito pela norma ECMA-6.
.LP
H uma variante do ASCII que substitui o smbolo americano para a libra
com o smbolo britnico da libra esterlina. Este ASCII  usado na 
Gr-Bretanha, e  chamado "UK ASCII",
sendo o americano designado "US ASCII".
.LP
Como o linux foi escrito para hardware americano, ele normalmente
suporta o ASCII americano

.SH ISO 8859
ISO 8859  um conjunto de 10 conjuntos de caracteres de 8 bits que comeam
com o ASCII americano (primeiros 128 caracteres), que so seguidos de caracteres
de controle invisveis (posies 128 a 159) e 96 grficos de largura fixa nas posies de 160 a 255.
.LP
Destes, o mais importante  o ISO 8859-1 (Latin-1), que  suportado pelo driver
do console linux, razoavelmente bem suportado pelo X11R6
e  o conjunto base do HTML.
.LP
O suporte aos outros conjuntos do 8859 pelo console pode ser ativado por
utilitrios como
.BR setfont (8)
que modificam as aes do teclado e a tabela de grficos EGA
e usam a a tabela e fontes mapeada pelo usurio no controlador
do console.
.LP
Seguem descries breves de cada conjunto:
.TP
8859-1 (Latin-1) 
Latin-1 serve para a maioria das linguas europias ocidentais como o
albans, catalo, dinamarqus, holands, ingls, finlands, francs, alemo,
galcio, irlands, islands, italiano, noruegu6es, portugus, espanhol e sueco.
A falta de ligaduras ij (holands), oe (francs) e das aspas ,, e `` do alemo
 tolervel.
.TP
8859-2 (Latin-2)
Latin-2 serve para a maiora das linguas eslavas e centro-europias de
escrita latina, tais como: croata, tcheco, alemo, hngaro, polons, romeno,
eslovaco e esloveno.
.TP
8859-3 (Latin-3)
Latin-3  muito utilizado por quem escreve em esperanto, galcio, malts e turco.
.TP
8859-4 (Latin-4)
Latin-4 contm letras para o estoniano, ltvio e lituano. Est
basicamente obsoleto, veja 8859-10 Latin-6.
.TP
8859-5 
Cirlico. Suporta blgaro, bielorusso, macednio,
russo, srvio e ucraninano. Os ucranianos lem a letra 'ghe' 'heh',
e precisariam de um ghe acentuado para escrever esta letra corretamente.
Veja a discusso sobre o KOI8-R abaixo.
.TP
8859-6
Suporta rabe. A tabela de glifos do 8859-6  uma fonte fixa com formas
separadas. Para exibi-las, um driver tem que conbin-las usando as formas
iniciais, mdia e final.
.TP
8859-7
Suporta o grego moderno.
.TP
8859-8
Suprota hebraico.
.TP
8859-9 (Latin-5)
Uma variante do Latin-1 que substitui letras islandesas raramente
usadas por letras turcas.
.TP
8859-10 (Latin-6) 
Latin 6 contm as letras inuit (Groelandesas) e sami (lapnicas)
ausantes do latin-4 de modo a abranger toda a rea nrdica. O RFC 1345
contm um 'latin6' preliminar que  diferente. O sami skolt requer alguns
acentos que esto ausentes nesta verso.
.TP
8859-13 (Latin-7)
.TP
8859-14 (Latin-8)
.TP
8859-15
Acrescenta o sinal de euro e as ligaduras francesas que esto ausentes
no Latin-1.
.SH KOI8-R
KOI8-R  um conjunto de caracteres no ISO muito usado na Rssia. A metade
inferior  ASCII americano, e a superior  um conjunto de caracteres
cirlicos um pouco melhor projetado que o do ISO 8859-5.
.LP
O suporte a KOI8-R pelo console  acionado por utilitrios que modificam
o mapeamento do teclado e a tabela de grficos EGA, utilizando a tabela
de mapeamento pelo usurio no driver do console.
.SH UNICODE
Unicode (ISO 106460  uma norma que visa representar sem ambigidade todos
os smbolos usados em linguagens humanas. A encodificao  em 32 bits 
(as verses mais antigas usam 16 bits). Mais informaes sobre o Unicode
em <http://www.unicode.com>.
.LP
O linux representa o unicode com o Unicode transfer Format (UTF-8) de
8 bits. UTF-8 representa o Unicode com comprimento varivel, usando 1 byte
para 7 bits, 2 para 11 bits, 3 para 16 bits, 4 para 21 bits, 5 para 26 bits
e 6 para 31 bits.
.LP
Sejam 0,1,x um zero, um, ou bit arbitrrio. Um byte 0xxxxxxx representa
o caracter unicode 00000000 0xxxxxxx, que por sua vez codifica o mesmo
que 0xxxxxxx em ASCII. Assim, o ASCII no  modificado pelo UTF-8, e as
pessoas que usem apenas ASCII no notaro nenhuma diferena: nem no
cdigo nem no tamanho do arquivo.
LP
Um byte 110xxxxx inicia um cdigo de 2 bytes, e a seqncia 110xxxxx 
10yyyyyy  traduzida para 00000xxx xxyyyyyy. Um byte 1110xxxx inicia 
um cdigo de 3 bytes, e 1110xxxx 10yyyyyy 10zzzzzz  traduzida para
xxxxyyyy yyzzzzzz. Quando se usa UTF-8 para o ISO 10646 de 31 bits, 
esta progresso continua at cdigos de 6 bytes.
.LP
Para os usurios de ISO-8859-1 isto significa que os caracteres com o bit mais significativo
presente passam a ser codificados com dois bytes. Isto tende a aumentar o tamanho de arquivos de texto
em um ou dois porcento. No h problemas de converso, no entanto, porque
os valores unicode dos smbolos ISO-8859-1 so iguais aos valores originais no ISO 8859-1
(seguidos por oito bits zero). Para os usurios japoneses, isto
significa que os cdigos de 16 bits atualmente usados passam a necessitar de 3 bytes,
e so necessrias extensas tabelas de mapeamento. Muitos usurios japoneses
preferem o ISO 2022 por isso.
.LP
Observe que o UTF-8  auto-sincronizante: 10xxxxxx inicia, e todo o
resto do byte termina um cdigo. Observe ainda que bytes ASCII aparecem
em um fluxo UTF-8 representados unicamente do modo como eles aparecem.
 especialmente importante que os NULs e '/' no so modificados.
.LP
Como o ASCII,o NUL  e o '/' no so modificados, o kernel no percebe
que o UTF-8 est sendo usado. Ele no se importa com quais so os
significados dos bytes com que ele est lidando.
.LP
A traduo de streams unicode  normalmente feita por tabelas 'subfont',
que associam subconjuntos do unicode a glifos. Internamente, o kernel
usa unicode para descrever a subfonte carregada na RAM de vdeo. Isto
significa que se pode usar um conjunto de caracteres com 512 smbolos
no modo UTF-8. Isto no  suficiente para japons, chins ou coreano,
mas serve para a maioria das outras aplicaes.

.SH ISO 2022 AND ISO 4873
As normas ISO 2022 e 4873 descrevem um modelo de controle de fonte
baseado no VT100. Este modelo  parcialmente suportado pelo kernel e
pelo
.BR xterm (1).
 popular no Japo e na Coria.
.LP
H quatro conjuntos de caracteres grficos (G0, G1, G2 e G3), um
dos quais  o conjunto atual de caracteres para cdigos com o bit 
mais significativo ausente (inicialmente  o G0), e um deles  o 
conjunto inicial para cdigos com este bit presente (inicialmente 
o G1). Cada conjunto grfico tem 94 ou 96 caracteres, e 
essencialmente um conjunto de 7 bits. Eles utilizam os cdigos de
040 a 0177 (ou 041 a 0176) ou de 0240 a 0377 (ou de 0241 a 0376).
G0 sempre tem 94 de tamanho e usa os cdigos de 041 a 0176.
.LP
A mudana entre os conjuntos de caracteres  feita com as funes
de permuta ^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).
A funo LS\fIn\fP aciona o conjunto de caracteres G\fIn\fP para
cdigos com o bit mais significativo ausente.
A funo LS\fIn\fPR aciona o conjunto de caracteres G\fIn\fP para
cdigos com o bit mais significativo presente.
A funo SS\fIn\fP aciona o conjunto de caracteres G\fIn\fP (\fIn\fP=2
ou 3) para o prximo caracter independente do valor de seu bit mais
significativo.
.LP
Os conjuntos de caracteres de 94 itens - designado G\fIn\fP -
podem ser ativados pelas seqncias 'ESC ( xx' (G0); 'ESC ) xx'
(G1), 'ESC * xx' (G2) e 'ESC + xx' (G3); onde xx  um cdigo 
definido pela norma ISO 2375 (conjunto internacional de conjuntos
de caracteres codificados).
Por exemplo, ESC ( @ seleciona o conjunto ISO 646 como G0,
ESC ( A seleciona o conjunto britnico de caracteres (com o 
smbolo da libra ao invs do nmero), ESC ( B seleciona ASCII
(com o dlar no lugar do smbolo de moeda), ESC ( M seleciona
um conjunto de caracteres para linguagens africanas, ESC ( !
seleciona um conjunto de caracteres cubano, etc, etc.
.LP
Um conjunto de caracteres de 96 itens - designado G\fIn\fP -
 ativvel pela seqncia ESC - xx (G1), ESC . xx (G2) ou ESC /
xx (G3).
Por exemplo, ESC - G seleciona o alfabeto hebraico como G1.
.LP
Um conjunto de caracteres com mltiplos bytes - designado G\fIn\fP - 
 acionado com as seqncias 'ESC $ xx' ou 'ESC $ ( xx' (G0), 
'ESC $ ) xx' (G1), 'ESC $ * xx' (G2), 'ESC $ + xx' (G3). Por exemplo,
ESC $ ( C coloca o conjunto de caracteres coreano em G0.
O conjunto japons invocado por ESC $ B tem uma verso mais recente
selecionvel por 'ESC & @ ESC $ B'.
.LP
ISO 4873 define um conjunto de caracteres mais estreitos, no qual G0 
 fixo (sempre ASCII), do modo que G1, G2 e G3
s podem ser invocados por cdigos com o bit mais significativo presente.
Especificamente, ^N e ^O no so mais usados, ESC ( xx
pode ser usado apenas com xx=B; e ESC ) xx, ESC * xx e ESC + xx
equivalem a ESC - xx, ESC . xx e ESC / xx respectivamente.

.SH "VEJA TAMBM"
.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 TRADUZIDO POR LDP-BR em 21/08/2000.
\&\fR\&\f(CWPaulo Csar Mendes <drps@ism.com.br> (traduo)\fR
\&\fR\&\f(CWAndr L. Fassone Canova <lonelywolf@blv.com.br> (reviso)\fR