Vnterm allows the X-environment user to type and display Vietnamese text. The keyboard input scheme follows the 7-bit VIQR (VIetnamese Quoted-Readable) standard, which is based on the prevalent Vietnamese networking convention of placing Vietnamese diacritical marks after the vowel, for example: "Vie^.t Nam".
With the appropriate font setting, vnterm can display both 7-bit and 8-bit Vietnamese text. The 7-bit text is assumed to follow the VIQR standard, and the 8-bit text is according to VISCII (VIetnamese Standard Code for Information Interchange), both published by the Viet-Std working group (Viet-Std@Haydn.Stanford.EDU).
On start-up, vnterm attempts to set the tty line to 8-bit mode, with canonical echoing of control characters turned off (because the Vietnamese characters "A(? A(~ A^~ Y? Y~ Y." are encoded in the C0 control-character area).
-/+vnk turn on/off Vietnamese keyboard filter (default on) -/+vns turn on/off Vietnamese screen output (default off) -vne ASCII_code explicitly specify erase character
The keyboard and screen options above can also be found and set in the
"VT Options" menu of vnterm , which you may access by clicking the CTRL-middle-mouse-button
combination. The corresponding X resources are: vnterm*font: vn-r14
vnterm*vnFilterKeyboard: on
vnterm*vnFilterScreen: off
vnterm*vnEraseCharacter: 127
If vnFilterKeyboard is turned off, no keyboard processing is done and characters are reported to the underlying application as they are typed. With vnFilterKeyboard turned on, Vietnamese composition takes place.
The erase character (which is needed to backspace over the Vietnamese letter being composed) is figured from the terminal settings at the time vnterm is invoked. In those cases where it is necessary to specify another erase character, vnEraseCharacter may be used. The argument to this option is the decimal ASCII code for the desired erase character. Use 8 for backspace, and 127 for delete.
The vnFilterScreen setting is provided as a convenience to the user who wants to read 7-bit Vietnamese without having first to convert it to 8-bit format. When turned on, vnFilterScreen causes the displayed characters to be interpreted with exactly the same rules as those applied to keyboard input. This option is provided with Soc.Culture.Vietnamese readers explicitly in mind.
To prevent composition, use "\". The example above shows "hu+." which tells Vnterm that the ending period is a period and not a Vietnamese dot-below (da^'u na(.ng).
The diacritics (da^'u) are: MARK CHAR EXAMPLE
breve ( a(n na(n
circumflex ^ nha^n co^ng
horn + tu+o+ng tu+
acute ' choa'ng va'ng
grave ` lu` khu`
hook above ? ho?i tha(m
tilde ~ ky~ ca`ng
dot below . Tra.ng Nguye^n
dd dd dda ti`nh
DD DD DDo^ng So+n
This mode is useful if you type mostly English and don't want the trouble of having to type "\" to escape composition all the time.
Occasionally, magic sequences such as "\V", "\M", and "\L" may appear in non-VIQR-conformant text which will change the state of the screen filter causing it not to display Vietnamese properly afterwards. When this happens, simply turn the screen filter off and on again, by using the CTRL-middle-mouse-button menu of vnterm.
Adapted from X11R5's xterm by Tin Le <tin@saigon.com>
Adapted from X11R4's xterm by the TriChlor Group, TriChlor@haydn.Stanford.EDU.
Thanks to Tuan P. Do (tuan@compass-da.com) for illustrating the need for the vnEraseCharacter specifier.
RFC 1456 Vietnamese Standardization Working Group, "Conventions for Encoding
the Vietnamese Language
VISCII: VIetnamese Standard Code for Information Interchange
VIQR: VIetnamese Quoted-Readable Specification Revision 1.1",
May 1993.