Código de script indiano para intercâmbio de informações - Indian Script Code for Information Interchange

O Código de Script Indiano para Intercâmbio de Informações ( ISCII ) é um esquema de codificação para representar vários sistemas de escrita da Índia . Ele codifica as principais escritas índicas e uma transliteração romana. Os scripts suportados são: Assamês , Bengali (Bangla) , Devanagari , Gujarati , Gurmukhi , Kannada , Malayalam , Oriya , Tamil e Telugu . O ISCII não codifica os sistemas de escrita da Índia baseados no persa , mas seus códigos de troca de sistema de escrita fornecem, no entanto, para Caxemira , Sindi , Urdu , Persa , Pashto e Árabe . Os sistemas de escrita baseados em persa foram subsequentemente codificados na codificação PASCII .

O ISCII não foi amplamente usado fora de certas instituições governamentais, embora uma variante sem o mecanismo ATR tenha sido usada no Mac OS clássico e agora tenha se tornado amplamente obsoleto pelo Unicode . O Unicode usa um bloco separado para cada sistema de escrita índico e preserva amplamente o layout ISCII dentro de cada bloco.

Fundo

Os sistemas de escrita derivados de Brahmi têm estrutura semelhante. Portanto, o ISCII codifica letras com o mesmo valor fonético no mesmo ponto de código, sobrepondo os vários scripts. Por exemplo, os códigos ISCII 0xB3 0xDB representam [ki]. Será traduzido como കി em Malayalam , कि em Devanagari, como ਕਿ em Gurmukhi e como கி em Tamil. O sistema de escrita pode ser selecionado em rich text por marcação ou em texto simples por meio do código ATR descrito a seguir.

Uma motivação para o uso de uma única codificação é a ideia de que ela permitirá uma fácil transliteração de um sistema de escrita para outro. No entanto, existem incompatibilidades suficientes para que esta não seja realmente uma ideia prática.

ISCII é uma codificação de 8 bits. Os 128 pontos de código inferiores são ASCII simples , os 128 pontos de código superiores são específicos do ISCII. Além dos pontos de código que representam caracteres, o ISCII usa um ponto de código com ATR mnemônico que indica que o byte a seguir contém um dos dois tipos de informação. Um conjunto de valores muda o sistema de escrita até o próximo indicador ou fim de linha do sistema de escrita. Outro conjunto de valores seleciona os modos de exibição, como negrito e itálico. O ISCII não fornece um meio de indicar o sistema de gravação padrão.

Layout de página de código

A tabela a seguir mostra o conjunto de caracteres para Devanagari . Os conjuntos de códigos para Assamês, Bengali, Gujarati, Gurmukhi, Kannada, Malayalam, Oriya, Tamil e Telugu são semelhantes, com cada forma Devanagari substituída pela forma equivalente em cada sistema de escrita . Cada caractere é mostrado com seu código decimal e seu equivalente Unicode .

ISCII Devanágari
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _UMA _B _C _D _E _F
0_
0
NUL
0000
SOH
0001
STX
0002
ETX
0003
EOT
0004
ENQ
0005
ACK
0006
BEL
0007
BS
0008
HT
0009
LF
000A
VT
000B
FF
000C
CR
000D
SO
000E
SI
000F
1_
16
DLE
0010
DC1
0011
DC2
0012
DC3
0013
DC4
0014
NAK
0015
SYN
0016
ETB
0017
CAN
0018
EM
0019
SUB
001A
ESC
001B
FS
001C
GS
001D
RS
001E
US
001F
2_
32
SP
0020
!
0021
"
0022
#
0023
$
0024
%
0025
&
0026
'
0027
(
0028
)
0029
*
002A
+
002B
,
002C
-
002D
.
002E
/
002F
3_
48
0
0030
1
0031
2
0032
3
0033
4
0034
5
0035
6
0036
7
0037
8
0038
9
0039
:
003A
;
003B
<
003C
=
003D
>
003E
?
003F
4_
64
@
0040
A
0041
B
0042
C
0043
D
0044
E
0045
F
0046
G
0047
H
0048
I
0049
J
004A
K
004B
L
004C
M
004D
N
004E
O
004F
5_
80
P
0050
Q
0051
R
0052
S
0053
T
0054
U
0055
V
0056
W
0057
X
0058
Y
0059
Z
005A
[
005B
\
005C
]
005D
^
005E
_
005F
6_
96
`
0060
a
0061
b
0062
c
0063
d
0064
e
0065
f
0066
g
0067
h
0068
eu
0069
j
006A
k
006B
l
006C
m
006D
n
006E
o
006F
7_
112
p
0070
q
0071
r
0072
s
0073
t
0074
u
0075
v
0076
w
0077
x
0078
y
0079
z
007A
{
007B
|
007C
}
007D
~
007E
DEL
007F
8_
128
9_
144
A_
160

0901

0902

0903

0905

0906

0907

0908

0909

090A

090B

090E

090F

0910

090D

0912
B_
176

0913

0914

0911

0915

0916

0917

0918

0919

091A

091B

091C

091D

091E

091F

0920

0921
C_
192

0922

0923

0924

0925

0926

0927

0928

0929

092A

092B

092C

092D

092E

092F
य़
095F

0930
D_
208

0931

0932

0933
ऴ
0934

0935

0936

0937

0938

0939
INV
 

093E
ि
093F

0940

0941

0942

0943
E_
224

0946

0947

0948

0945

094A

094B

094C

0949

094D

093C

0964
ATR
 
F_
240
EXT
 

0966

0967

0968

0969

096A

096B

096C

096D

096E

096F

  Carta  Número  Pontuação  Símbolo  Outro  Indefinido

Pontos de código especiais

Caractere INV - ponto de código D9 (217)
O caractere INV (consoante invisível) é usado como uma pseudo-consoante para exibir elementos combinados de forma isolada. Por exemplo, क (ka) + ् (halant) + INV = क्‍ (meio ka). O equivalente Unicode é U + 200D ZERO WIDTH JOINER ( ZWJ ). No entanto, conforme observado abaixo , o caractere halant ISCII pode ser duplicado ou combinado com o nukta ISCII para obter efeitos criados por ZWNJ ou ZWJ em Unicode. Por esta razão, a Apple mapeia o caráter ISCII INV para o Unicode da esquerda para a direita marca , de modo a garantir -tropeçando rodada .
Caractere ATR - ponto de código EF (239)
O caractere ATR (atributo) seguido por um código de byte é usado para alternar para um atributo de fonte diferente (como negrito) ou para um idioma ISCII ou PASCII diferente (como bengali), até a próxima sequência ATR ou o final do linha. Não tem equivalente Unicode direto, pois os atributos de fonte não fazem parte do Unicode e cada script tem um conjunto distinto de pontos de código.
Atributos de apresentação
ATR + byte Mnemônico Opção de formatação
0x30 BLD Negrito
0x31 ITA Itálico
0x32 UL Sublinhado
0x33 EXP Expandido
0x34 HLT Realçar
0x35 OTL Contorno
0x36 SHD Sombra
0x37 PRINCIPAL Metade superior do caractere (usado com LOW para criar caracteres de altura dupla)
0x38 BAIXO Metade inferior do caractere (usado com TOP para criar caracteres de altura dupla)
0x39 DBL Linha inteira de largura dupla e altura dupla
Mudanças para scripts ISCII
ATR + byte Mnemônico Script ISCII
0x40 DEF Script padrão (ou seja, o script que será alterado de volta após uma quebra de linha)
0x41 RMN Transliteração romanizada
0x42 DEV Devanágari
0x43 BNG Escrita bengali
0x44 TML Escrita Tamil
0x45 TLG Escrita telugu
0x46 ASM Script assamês
0x47 ORI Roteiro Odia
0x48 KND Escrita canarim
0x49 MLM Escrita malaiala
0x4A GJR Script guzerate
0x4B PNJ Gurmukhī
Muda para PASCII
ATR + byte Mnemônico Localidade PASCII
0x71 ARB Alfabeto árabe
0x72 PES Alfabeto persa
0x73 URD Alfabeto urdu
0x74 SND Alfabeto sindi
0x75 KSM Alfabeto da Caxemira
0x76 PST Alfabeto pashto
Caractere EXT - ponto de código F0 (240)
O caractere EXT (extensões para Védico) seguido por um código de byte indica um sotaque Védico. Não tem equivalente Unicode direto, pois os acentos védicos são atribuídos a pontos de código distintos.
Caráter Halant ्— ponto de código E8 (232)
O caractere halant remove a vogal implícita de uma consoante e é usado entre consoantes para representar consoantes conjuntas. Por exemplo, क (ka) + ् (halant) + त (ta) = क्त (kta). A sequência ् (halant) + ् (halant) exibe um conjunto com um halant explícito, por exemplo क (ka) + ् (halant) + ् (halant) + त (ta) = क्‌त. A sequência ् (halant) + ़ (nukta) exibe um conjunto com meias consoantes, se disponível, por exemplo क (ka) + ् (halant) + ़ (nukta) + त (ta) = क्‍त.
Correspondências entre ISCII e comportamento Unicode halent / virama
ISCII Unicode
halante único E8 halant 094D
halante + halante E8 E8 halant + ZWNJ 094D 200C
halant + nukta E8 E9 halant + ZWJ 094D 200D
Caractere Nukta ़— ponto de código E9 (233)
O caractere nukta após outro caractere ISCII é usado para uma série de caracteres mais raros que não existem no conjunto ISCII principal. Por exemplo, क (ka) + ़ (nukta) = क़ (qa). Esses caracteres têm formas pré-compostas em Unicode, conforme mostrado na tabela a seguir.
Caracteres Unicode únicos correspondentes a sequências ISCII nukta
Ponto de
código ISCII

Personagem original
Personagem
com nukta

Ponto de código Unicode
A1 (161) 0950
A6 (166) 090C
A7 (167) 0961
AA (176) 0960
B3 (179) क़ 0958
B4 (180) ख़ 0959
B5 (181) ग़ 095A
BA (186) ज़ 095B
BF (191) ड़ 095C
C0 (192) ढ़ 095D
C9 (201) फ़ 095E
DB (219) ि 0962
DC (220) 0963
DF (223) 0944
EA (234) 093D

Páginas de código para conversão ISCII

Para converter de Unicode (UTF-8) em uma codificação ISCII / ANSI, as seguintes páginas de código podem ser usadas:

  • 57002: Devanágari (hindi, marati, sânscrito, concani)
  • 57003: bengali
  • 57004: Tamil
  • 57005: Telugu
  • 57006: assamês
  • 57007: Odia
  • 57008: Kannada
  • 57009: Malayalam
  • 57010: Gujarati
  • 57011: Punjabi (Gurmukhi)

Pontos de código para todos os idiomas

Referências

links externos