Windows-1258

Windows-1258 is a code page used in Microsoft Windows to represent Vietnamese texts.

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.

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.

[4] Combining diacritics are encoded after the letter in both Windows-1258 and Unicode[4] (like VNI, unlike ANSEL).