VISCII
VISCII is an unofficially-defined modified ASCII character encoding for using the Vietnamese language with computers. It should not be confused with the similarly-named officially registered VSCII encoding. VISCII keeps the 95 printable characters of ASCII unmodified, but it replaces 6 of the 33 control characters with printable characters. It adds 128 precomposed characters. Unicode and the Windows-1258 code page are now used for virtually all Vietnamese computer data, but legacy VSCII and VISCII files may need conversion.
History
A traditional extended ASCII character set consists of the ASCII set plus up to 128 characters. Vietnamese requires 134 additional letter-diacritic combinations, which is six too many. There are essentially three different ways to handle this problem:
- Use variable-width encoding
- Use combining diacritical marks (as do VSCII and Windows-1258)
- Replace six of the basic ASCII control characters
VISCII went for the last option, replacing six of the least problematic (e.g., least likely to be recognised by an application and acted on specially) (C0 control codes STX, ENQ, ACK, DC4, EM, and RS) with six of the least-used uppercase letter-diacritic combinations. While this option may cause programs that use those control codes to malfunction when handling VISCII text, it creates fewer complications than the other two options. However, using up all the extended code points for accented letters left no room to add useful symbols, superscripted numbers, curved quotes, proper dashes, etc., like most other extended ASCII character sets.
VISCII was designed by the Vietnamese Standardization Working Group (Viet-Std Group) based in Silicon Valley, California in 1992 while they were working with the Unicode consortium to include precomposed Vietnamese characters in the Unicode standard. It is mentioned in RFC 1456, though incorrectly dubbed "VIetnamese Standard Code for Information Interchange" (the same name taken by VSCII).
Support
VISCII is partially supported by the TriChlor Software Group in California, which has released various VISCII-compliant software packages, libraries, and fonts for MS-DOS and Windows, Unix, and Macintosh. VISCII-compliant software is available at many FTP sites.
Character set
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ 0 |
NUL 0000 |
SOH 0001 |
Ẳ 1EB2 |
ETX 0003 |
EOT 0004 |
Ẵ 1EB4 |
Ẫ 1EAA |
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 |
Ỷ 1EF6 |
NAK 0015 |
SYN 0016 |
ETB 0017 |
CAN 0018 |
Ỹ 1EF8 |
SUB 001A |
ESC 001B |
FS 001C |
GS 001D |
Ỵ 1EF4 |
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 |
Ạ 1EA0 |
Ắ 1EAE |
Ằ 1EB0 |
Ặ 1EB6 |
Ấ 1EA4 |
Ầ 1EA6 |
Ẩ 1EA8 |
Ậ 1EAC |
Ẽ 1EBC |
Ẹ 1EB8 |
Ế 1EBE |
Ề 1EC0 |
Ể 1EC2 |
Ễ 1EC4 |
Ệ 1EC6 |
Ố 1ED0 |
9_ 144 |
Ồ 1ED2 |
Ổ 1ED4 |
Ỗ 1ED6 |
Ộ 1ED8 |
Ợ 1EE2 |
Ớ 1EDA |
Ờ 1EDC |
Ở 1EDE |
Ị 1ECA |
Ỏ 1ECE |
Ọ 1ECC |
Ỉ 1EC8 |
Ủ 1EE6 |
Ũ 0168 |
Ụ 1EE4 |
Ỳ 1EF2 |
A_ 160 |
Õ 00D5 |
ắ 1EAF |
ằ 1EB1 |
ặ 1EB7 |
ấ 1EA5 |
ầ 1EA7 |
ẩ 1EA9 |
ậ 1EAD |
ẽ 1EBD |
ẹ 1EB9 |
ế 1EBF |
ề 1EC1 |
ể 1EC3 |
ễ 1EC5 |
ệ 1EC7 |
ố 1ED1 |
B_ 176 |
ồ 1ED3 |
ổ 1ED5 |
ỗ 1ED7 |
Ỡ 1EE0 |
Ơ 01A0 |
ộ 1ED9 |
ờ 1EDD |
ở 1EDF |
ị 1ECB |
Ự 1EF0 |
Ứ 1EE8 |
Ừ 1EEA |
Ử 1EEC |
ơ 01A1 |
ớ 1EDB |
Ư 01AF |
C_ 192 |
À 00C0 |
Á 00C1 |
 00C2 |
à 00C3 |
Ả 1EA2 |
Ă 0102 |
ẳ 1EB3 |
ẵ 1EB5 |
È 00C8 |
É 00C9 |
Ê 00CA |
Ẻ 1EBA |
Ì 00CC |
Í 00CD |
Ĩ 0128 |
ỳ 1EF3 |
D_ 208 |
Đ 0110 |
ứ 1EE9 |
Ò 00D2 |
Ó 00D3 |
Ô 00D4 |
ạ 1EA1 |
ỷ 1EF7 |
ừ 1EEB |
ử 1EED |
Ù 00D9 |
Ú 00DA |
ỹ 1EF9 |
ỵ 1EF5 |
Ý 00DD |
ỡ 1EE1 |
ư 01B0 |
E_ 224 |
à 00E0 |
á 00E1 |
â 00E2 |
ã 00E3 |
ả 1EA3 |
ă 0103 |
ữ 1EEF |
ẫ 1EAB |
è 00E8 |
é 00E9 |
ê 00EA |
ẻ 1EBB |
ì 00EC |
í 00ED |
ĩ 0129 |
ỉ 1EC9 |
F_ 240 |
đ 0111 |
ự 1EF1 |
ò 00F2 |
ó 00F3 |
ô 00F4 |
õ 00F5 |
ỏ 1ECF |
ọ 1ECD |
ụ 1EE5 |
ù 00F9 |
ú 00FA |
ũ 0169 |
ủ 1EE7 |
ý 00FD |
ợ 1EE3 |
Ữ 1EEE |
Letter Number Punctuation Symbol Other undefined
See also
- ASCII
- Vietnamese Quoted-Readable (VIQR)
- Vietnamese Standard Code for Information Interchange (VSCII)
- Windows-1258
References
Further reading
- Flohr, Guido (2016) [2006]. "Locale::RecodeData::VISCII - Conversion routines for VISCII". CPAN libintl-perl. Archived from the original on 2017-01-14. Retrieved 2017-01-14.
- https://www.math.nmsu.edu/~mleisher/Software/csets/VISCII.TXT
External links
- RFC 1456 - Conventions for Encoding the Vietnamese Language
- Vietnamese-Standardization Working Group based in California
- Viet-Std Report 1992
- AnGiang Software
- VISCII-compliant software and fonts for MS-DOS and Windows
- VISCII-compliant software, libraries, and fonts for Unix
- WinVNKey, Vietnamese keyboard driver for Windows supporting multinational character sets, including VISCII
- MacVNKey, VISCII-compliant keyboard driver for Macintosh classic