| MIME / IANA | windows-1258 |
|---|---|
| Alias(es) | cp1258 (Code page 1258) |
| Languages | Vietnamese,English,French,German,Spanish,Danish,Norwegian,Swedish,Finnish,Irish,Albanian,Luxembourgish,Dutch. With combining diacritics: Asturian,Estonian,Italian,Portuguese,Guarani,Igbo,Nauruan,Yoruba |
| Created by | Microsoft |
| Standard | WHATWG Encoding Standard |
| Classification | extended ASCII,Windows-125x |
| Based on | Windows-1252 |
Windows-1258 is acode page used inMicrosoft Windows to representVietnamese texts. It makes use ofcombining diacritical marks.
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 toWindows-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 forVietnamese tone marks, one has been replaced with theđông sign, and eight others (four per case) have been changed to four otherwise-unsupportedVietnamese 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 andeuro 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 alwaysround-trip Unicode encoded Vietnamese due to changes caused byUnicode normalization.[4] Combining diacritics are encoded after the letter in both Windows-1258 and Unicode[4] (likeVNI, unlikeANSEL).
The following table shows Windows-1258. Each character is shown with itsUnicode equivalent.
IBM's code page 1129 (CCSID 1129 andeuro sign extended CCSID 1163)[11][12][13] is similar to code page 1258, but with the following differences:
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
| 8x | ||||||||||||||||
| 9x | ||||||||||||||||
| Ax | NBSP | ¡ | ¢ | £ | ¤ | ¥ | ¦ | § | œ | © | ª | « | ¬ | SHY | ® | ¯ |
| Bx | ° | ± | ² | ³ | Ÿ | µ | ¶ | · | Œ | ¹ | º | » | ¼ | ½ | ¾ | ¿ |
Differences from Windows-1258 | ||||||||||||||||