Dès les débuts de l'informatique, des chercheurs ou entrepreneurs vietnamiens ont cherché à informatiser leur écriture latine. De très nombreuses solutions ont été élaborées tant au Vietnam qu'à l'étranger comme les BK-HCM, VIETSEA, VIETSTAR, VISCII, VNI, VNU, VS, 3C, etc... Nous ne considérerons ici que les normes officielles de l'Institut de normalisation du Vietnam, le Tiêu chuẩn Việt Nam ou Technical Committee Viet Nam.
L'abondance des caractères utilisés par le quốc ngữ a toujours été une source de difficultés pour un codage normalisé de l'écriture alphabétique.
En effet l'alphabet vietnamien se compose de 2 × 21 = 42 consonnes (40 + 2, en jaune, n'appartenant ni au jeu de référence ISO 646 IRV ni au jeu ASCII) :
B | C | D | Đ | F | G | H | J | K | L | M | N | P | Q | R | S | T | V | W | X | Z |
b | c | d | đ | f | g | h | j | k | l | m | n | p | q | r | s | t | v | w | x | z |
et de 2 × 12 = 24 voyelles de base (12 + 12) :
A | Ă | Â | E | Ê | I | O | Ô | Ơ | U | Ư | Y |
a | ă | â | e | ê | i | o | ô | ơ | u | ư | y |
chaque voyelle pouvant supporter chacun des 6 tons :
◌ | ◌̀ | ◌́ | ◌̉ | ◌̃ | ◌̣ |
ngang | huyền | sắc | hỏi | ngã | nặng |
ce qui donne une combinaison de 6 × 24 = 144 voyelles (12 + 132) :
A | À | Á | Ả | Ã | Ạ | a | à | á | ả | ả | ạ |
Ă | Ằ | Ắ | Ẳ | Ẳ | Ặ | ă | ằ | ắ | ẳ | ẳ | ặ |
 | Ầ | Ấ | Ấ | Ẫ | Ậ | â | ầ | ấ | ấ | ẫ | ậ |
E | È | É | Ẻ | Ẽ | Ẹ | e | è | é | ẻ | ẽ | ẹ |
Ê | Ề | Ế | Ể | Ễ | Ệ | ê | ề | ế | ể | ễ | ệ |
I | Ì | Í | Ỉ | Ĩ | Ị | i | ì | í | ỉ | ĩ | ị |
O | Ò | Ó | Ỏ | Õ | Ọ | o | ò | ó | ỏ | õ | ọ |
Ô | Ồ | Ố | Ổ | Ổ | Ộ | ô | ồ | ố | ổ | ổ | ộ |
Ơ | Ờ | Ớ | Ở | Ỡ | Ợ | ơ | ờ | ớ | ở | ỡ | ợ |
U | Ù | Ù | Ủ | Ũ | Ụ | u | ù | ù | ủ | ũ | ụ |
Ư | Ừ | Ứ | Ử | Ữ | Ữ | ư | ừ | ứ | ử | ữ | ữ |
Y | Ỳ | Ý | Ỷ | Ỹ | Ỵ | y | ỳ | ý | ỷ | ỹ | ỵ |
Le quốc ngữ comporte donc, en plus des caractères de base
,
132 voyelles accentuées, 2 consonnes et le symbole monétaire du đồng soit 135 caractères.
Or la norme ISO 2022 précise que les jeux de 128 caractères codés sur 7 bits doivent comporter un sous-ensemble de 32 caractères de contrôle - appelé C0 - dans les positions 0016 à 1F16 et un sous ensemble de 96 caractères graphiques - appelé G0 - dans les positions 2016 à FF16.
De même les jeux de 256 caractères codés sur 8 bits doivent eux comporter deux fois cette structure, soit les mêmes sous-ensembles C0 et G0 redoublés par les sous-ensembles analogues C1 et G1 dans les positions 8016 à 9F16 et A016 à FF16.
En conséquence :
D'où le dilemne : ou ne pas être conforme à l'ISO 2022 ou ne pas disposer de tous les caractères précomposés. Aussi la norme TCVN 5712:1993 prévoit-elle trois variantes :
Le TCVN
avait aussi travaillé sur un jeu
ISO 8859-V basé sur
l'ISO 8859-1 (ISO Latin 1).
Cinq caractères, à savoir les Ò, ò, Ü, ü, Þ
sont remplacés par les signes de tons combinables.
Le thorn minuscule þ est lui remplacé par ₫, le signe monétaire de la monnaie vietnamienne, le đồng.
Mais tous ces jeux présentaient l'inconvénient soit de ne pas être conforme au cadre général de l'ISO 2022
soit de nécessiter un moteur de rendu complexe pour pouvoir superposer les signes diacritiques sur les
lettres et ce aussi bien sur les majuscules que sur les minuscules.
On voit donc qu'il n'y a donc aucune solution complète avec un jeu de caractères à 8 bits qui ne dispose que de 95 positions supplémentaires pour coder 135 caractères.
Passer à un jeu à 16 bits - qui comporte 65536 positions - comme cela avait déjà était fait pour le chinois ou le japonais, pour pouvoir prendre en compte 40 caractères, a du paraître trop luxueux.
Mais heureusement l'élaboration du standard Unicode et de la norme ISO 10646
et son implémentation progressive par tous les acteurs de l'informatique
a complètement dépassé le problème.
Il devient en effet possible dans ce cadre universel,
non seulement de représenter tous les caractères du quốc ngữ
qui n'ont pas déjà été définis pour d'autres langues,
mais aussi tous
les caractères du hán et du nôm
ainsi que ceux de toutes les minorités nationales.
Un des principes de construction de l'Unicode été de s'appuyer sur des jeux de caractères de l'ISO préexistants tout en évitant les doublons. Les caractères du quốc ngữ se trouvent donc répartis dans plusieurs zones de la manière suivante :
zone Unicode | caractères |
---|---|
Basic Latin | A-Z a-z |
Latin 1 Supplement | À Á Â Ã È É Ê Ì Í Ò Ó Ô Õ Ù Ú Û Ý à á â ã è é ê ì í ò ó ô õ ù ú û ý |
Latin Extended A | Ă ă Đ đ Ĩ ĩ Ũ ũ |
Latin Extended B | Ơ ơ Ư ư |
Latin Extended Additional | Ạ ạ Ả ả Ấ ấ Ầ ầ Ẩ ẩ Ẫ ẫ Ậ ậ Ắ ắ Ằ ằ Ẳ ẳ Ẵ ẵ Ặ ặ Ẹ ẹ Ẻ ẻ Ẽ ẽ Ế ế Ề ề Ể ể Ễ ễ Ệ ệ Ỉ ỉ Ị ị Ọ ọ Ỏ ỏ Ố ố Ồ ồ Ổ ổ Ỗ ỗ Ộ ộ Ớ ớ Ờ ờ Ở ở Ỡ ỡ Ợ ợ Ụ ụ Ủ ủ Ứ ứ Ừ ừ Ử ử Ữ ữ Ự ự Ỳ ỳ Ỵ ỵ Ỷ ỷ Ỹ ỹ |
Currency Symbols | ₫ |
Proin et pede. Integer luctus justo ut odio. Vivamus nonummy posuere dolor. Suspendisse odio risus, accumsan ut, convallis vel, gravida a, ante. Integer non diam. Donec interdum nisl ut ante. Donec a sem vel tellus auctor facilisis. Maecenas purus tortor, elementum at, porta vitae, porta vitae, erat. Morbi et eros. Nam ultricies, ligula ut facilisis pretium, nisl odio cursus nisi, in aliquet est sem ac leo. Integer et ante id neque imperdiet tempus. Aenean a velit. Pellentesque ac erat sed dolor volutpat bibendum. Duis arcu elit, vulputate non, ultricies ut, nonummy iaculis, libero. Aliquam erat volutpat. Integer eu nisi quis arcu pulvinar convallis. Nulla faucibus viverra sapien. Praesent tortor est, pellentesque eget, aliquam id, sagittis a, nunc.