Windows-1258

Windows-1258 is a code page used in Microsoft Windows to represent Vietnamese texts. It makes use of combining diacritical marks.

Windows-1258
MIME / IANAwindows-1258
Language(s)Vietnamese, English
Created byMicrosoft
StandardWHATWG Encoding Standard
Classificationextended ASCII, Windows-125x
Based onWindows-1252

Windows-1258 is compatible with neither the Vietnamese standard (TCVN 5712 / VSCII), nor the various other encodings in use in practice (VISCII, VNI, VPS). Rather, it is very similar to Windows-1252, with the differences being that s-caron and z-caron (which were added to Windows-1252 later) are missing, five of the letters with diacritics have been replaced by combining diacritics for Vietnamese tone marks, one has been replaced with the đông sign, and eight others (four per case) have been changed to four otherwise-unsupported Vietnamese letters.

Use of combining diacritics means that Windows-1258 can cover the large number of combinations of letters and tone marks in Vietnamese without compromising coverage of control codes or symbols. However it also means that software must be careful to handle conversions between precomposed characters and combining sequences correctly when converting to/from other encodings and makes determining user-visible length of a string more difficult.

IBM uses code page 1258 (CCSID 1258 and euro sign extended CCSID 5354) for Windows-1258.[1][2][3]

UTF-8 is the preferred encoding for Vietnamese in modern applications. Windows-1258 may not always round-trip Unicode encoded Vietnamese due to changes caused by Unicode normalization.[4] Combining diacritics are encoded after the letter in both Windows-1258 and Unicode[4] (like VNI, unlike ANSEL).

Character set

The following table shows Windows-1258. Each character is shown with its Unicode equivalent.

Windows-1258[5][6][7][8][9][10]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _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
i
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

20AC

201A
ƒ
0192

201E

2026

2020

2021
ˆ
02C6

2030

2039
Œ
0152
9_
144

2018

2019

201C

201D

2022

2013

2014
˜
02DC

2122

203A
œ
0153
Ÿ
0178
A_
160
NBSP
00A0
¡
00A1
¢
00A2
£
00A3
¤
00A4
¥
00A5
¦
00A6
§
00A7
¨
00A8
©
00A9
ª
00AA
«
00AB
¬
00AC
SHY
00AD
®
00AE
¯
00AF
B_
176
°
00B0
±
00B1
²
00B2
³
00B3
´
00B4
µ
00B5

00B6
·
00B7
¸
00B8
¹
00B9
º
00BA
»
00BB
¼
00BC
½
00BD
¾
00BE
¿
00BF
C_
192
À
00C0
Á
00C1
Â
00C2
Ă
0102
Ä
00C4
Å
00C5
Æ
00C6
Ç
00C7
È
00C8
É
00C9
Ê
00CA
Ë
00CB
̀
0300
Í
00CD
Î
00CE
Ï
00CF
D_
208
Đ
0110
Ñ
00D1
̉
0309
Ó
00D3
Ô
00D4
Ơ
01A0
Ö
00D6
×
00D7
Ø
00D8
Ù
00D9
Ú
00DA
Û
00DB
Ü
00DC
Ư
01AF
̃
0303
ß
00DF
E_
224
à
00E0
á
00E1
â
00E2
ă
0103
ä
00E4
å
00E5
æ
00E6
ç
00E7
è
00E8
é
00E9
ê
00EA
ë
00EB
́
0301
í
00ED
î
00EE
ï
00EF
F_
240
đ
0111
ñ
00F1
̣
0323
ó
00F3
ô
00F4
ơ
01A1
ö
00F6
÷
00F7
ø
00F8
ù
00F9
ú
00FA
û
00FB
ü
00FC
ư
01B0

20AB
ÿ
00FF

  Letter  Number  Punctuation  Symbol  Other  Undefined  Differences from Windows-1252

Code page 1129

IBM's code page 1129 (CCSID 1129 and euro sign extended CCSID 1163)[11][12][13] is similar to code page 1258, but with the following differences:

Code page 1129 (differences from code page 1258)[14][15][16][17][18][19]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
8_
128
9_
144
A_
160
NBSP
00A0
¡
00A1
¢
00A2
£
00A3
¤
00A4
¥
00A5
¦
00A6
§
00A7
œ
0153
©
00A9
ª
00AA
«
00AB
¬
00AC
SHY
00AD
®
00AE
¯
00AF
B_
176
°
00B0
±
00B1
²
00B2
³
00B3
Ÿ
0178
µ
00B5

00B6
·
00B7
Œ
0152
¹
00B9
º
00BA
»
00BB
¼
00BC
½
00BD
¾
00BE
¿
00BF

  Letter  Number  Punctuation  Symbol  Other  Undefined  Differences from Windows-1258

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.