Notes: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta name="keywords" content="VietIME, Viet, Vietnamese, Java, Unicode, Input Method Editor, IME, keyboard driver, cross-platform"> <title>Vietnamese IME</title> <style> <!-- td { font-family: Verdana,Arial; font-size: 10pt } td.head { font-family: Verdena,Arial; font-size: 10pt; font-weight:bold; background-color:#005050; color:#FFFFFF} --> </style> </head> <body bgcolor="#FFFFFF"> <h2 align=center>VietIME 1.0.2</h2> <h4 align=center>Cross-platform Vietnamese Input Method Editor</h4> <h4>DESCRIPTION</h4> <p>Input methods are software components that interpret user operations such as typing keys, speaking, or writing using a pen device to generate text input for applications. The most common input methods are the ones that let users type text in Chinese, Japanese, Korean, or Vietnamese (Nôm) languages that use thousands of different characters, on a regular-sized keyboard. The text is typed in a form that can be handled by regular-sized keyboards, for example, in a romanized form, and then converted into the form that's really intended.</p> <p><b>VietIME</b> uses the input method framework in the Java 2 platform (J2SE 1.4 or higher) to enable the collaboration between text editing components and input methods in entering Vietnamese text with any Java runtime environment. Text editing components that use the input method framework run on any Java application environment and support any text input methods available on that Java application environment without modifying or recompiling the text editing component.</p> <h4>SYSTEM REQUIREMENTS</h4> <ol> <li><a href="http://java.sun.com/j2se/1.4.1/" target="_blank">Java 2 Runtime Environment</a>, v1.4 or later</li> <li>Any Java application or applet that employs AWT (TextArea and TextField) and Swing text components. Some examples are <a href="http://www.borland.com/jbuilder/" target="_blank">JBuilder</a>, <a href="http://wwws.sun.com/software/sundev/jde/index.html" target="_blank"> Forte for Java</a>, <a href="http://www.netbeans.org/" target="_blank"> NetBeans</a>, <a href="http://www.jext.org/" target="_blank">Jext</a>, <a href="http://www.jedit.org/" target="_blank">jEdit</a>,...<u><b><br> Note</b></u>: To work effectively with Vietnamese documents, a Java application should include provisions for font selection and file opening/saving in Unicode formats. </li> </ol> <h4>INSTALLING VietIME</h4> <p>To make the Vietnamese Input Method Editor available to Java applications and applets, its jar file, <b><font face="Courier New" size="2">VietIME.jar</font></b>, should be copied into the extensions directory of a Java 2 runtime environment. For J2SE v1.4.1, this would be <font face="Courier New" size="2">C:\Program Files\Java\j2re1.4.1\lib\ext</font> directory on Windows, <font face="Courier New" size="2">/usr/java/j2re1.4.1/lib/ext</font> on Solaris and Linux, or <font face="Courier New" size="2">/Library/Java/Extensions</font> on Mac OS X.</p> <p>You can also specify the extension directory at start-up time by setting the <font face="Courier New" size="2">java.ext.dirs</font> system property. For example, if <font face="Courier New" size="2">VietIME.jar</font> is placed in <font face="Courier New" size="2">C:\VietIME</font> directory, you can make input methods available to your program by the following command:</p> <blockquote> <p><font face="Courier New" size="2">java -Djava.ext.dirs=C:\VietIME -jar <i> yourprogram</i>.jar</font></p> </blockquote> <p><u><b>Note to Developers</b></u>: Java programs run within the integrated development environment<font face="Times New Roman">—</font>JBuilder or NetBeans, e.g.<font face="Times New Roman">—</font>using the JRE of the JDK configured for that IDE. Therefore, to enable input of Vietnamese text for software design and testing within IDE, <font face="Courier New" size="2"> VietIME.jar</font> should also be copied into the extensions directory of the JRE under the JDK used for the IDE, e.g., <font face="Courier New" size="2"> C:\j2sdk1.4.1\jre\lib\ext</font> on Windows.</p> <h4>SELECTING VIETNAMESE INPUT METHOD</h4> <p>After launching a Java application with a text component that supports input methods, the input method can be selected using the input method selection user interface provided by the runtime environment. First, make sure that a text component has the focus—typically, the text component indicates this by showing a blinking insertion point. Then, for Sun's Java 2 Runtime Environment, choose the <b>Select Input Method</b> menu item from the menu that can be pulled down from the top left corner of the window (the System menu on Windows, Window menu on Solaris). One can also right-click on the application’s title bar to get this menu. If you have installed J2RE 1.4 or higher and the Select Input Method option still isn't there, then the input method hasn't been installed properly.</p> <p>For platforms that do not have the Select Input Method menu item in the system menu (e.g. Linux), Sun provides an alternative way to select an input method by pressing a user-defined hot key. This way of selecting an input method is also useful for platforms that have the menu item in the system menu, e.g., Solaris and Microsoft Windows. If you press your favorite hot key defined by the <a target="_blank" href="http://java.sun.com/products/jfc/tsc/articles/InputMethod/InputMethodHotKey.jar"> Input Method Hot Key tool</a>, the same popup menu discussed previously is displayed.</p> <p>Choose <b>Vietnamese Input Methods</b> and select the desired input method option from the popup menu. VietIME supports the three most common Vietnamese input methods—VNI, VIQR, and Telex. A selectable <b>SmartMark</b> feature allows entering diacritical marks at word ends, besides the traditional method. Activation of IME is typically indicated by the appearance of a small status window that shows the currently selected input method. Initially, this window is positioned near the lower right corner of the screen, but it can be moved to a different location.</p> <p>To disable the current Vietnamese Input Method, bring up the popup menu and select <b>System Input Methods</b>; the status window will be hidden subsequently.</p> <p>For applets running in Java-enabled web browsers with J2RE plug-in installed, the same hot key mechanism for Linux is applied, in which the hot key, once configured using the input method hot selection key tool, can be pressed to pop up the input method selection menu when the text component in the applet gets focus.</p> <p><u><b>Note</b></u>: Be sure to turn off other external Vietnamese keyboard drivers—e.g., VPSKeys, WinVnKey, VNI, VietKey, or UniKey—when you use VietIME.</p> <h4>CURRENT LIMITATIONS</h4> If the caret is moved away from a character or a word waiting for marking (which one, a character or a word, depends on whether a SmartMark option is selected), that character or word loses the ability to accept accent marks. It will need to be re-typed before a diacritical mark can be combined with it.<p><font color="#FF0000"><u> <b>Note</b></u></font>: There's a bug in J2SE 1.3 that prevents proper display of some Vietnamese characters in Java text components on Windows 9x/ME. The bug is fixed in J2SE 1.4.</p> <h4>REFERENCES</h4> <ul> <li><a href="http://java.sun.com/j2se/1.3/docs/guide/imf/">Input Method Framework</a></li> <li><a href="http://www.sun.com/developers/gadc/faq/java/files/im.html">Java Input Method Questions</a></li> <li> <a target="_blank" href="http://java.sun.com/products/jfc/tsc/articles/InputMethod/inputmethod.html"> Using Input Methods on the Java Platform</a></li> </ul> <h4>COMMON VIETNAMESE CHARACTER INPUT METHODS</h4> <center> <table cellSpacing="1" cellPadding="2" width="600" align="center" border="0"> <tr> <td class="head" style="BACKGROUND-COLOR: #006600" align="middle" height="50"> Accents vs. Vowels<br> Dấu với nguyên âm</td> <td class="head" style="BACKGROUND-COLOR: #006600" align="middle" height="50"> Telex Method<br> Cách gõ Telex</td> <td class="head" style="BACKGROUND-COLOR: #006600" align="middle" height="50"> VNI Method<br> Cách gõ VNI</td> <td class="head" style="BACKGROUND-COLOR: #006600" align="middle" height="50"> VIQR Method<br> Cách gõ VIQR</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a circumflex - â</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">aa</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a6</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a^</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">e circumflex - ê</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">ee</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">e6</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">e^</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o circumflex - ô</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">oo</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o6</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o^</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a breve - ă</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">aw</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a8</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">a(</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o horn - ơ</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">ow</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o7</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">o+</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">u horn - ư</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">uw</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">u7</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">u+</td> </tr> <tr bgColor="#f0f0f0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">d stroke - đ</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">dd</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">d9</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">dd</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">acute - sắc</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">s</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">1</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">'</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">grave - huyền</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">f</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">2</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">`</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">dot below - nặng</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">j</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">5</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">.</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">hook above - hỏi</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">r</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">3</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">?</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">tilde - ngã</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">x</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">4</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">~</td> </tr> <tr bgColor="#e0e0e0"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle"> remove diacritics - xóa dấu</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">z</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">0</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">-</td> </tr> <tr bgColor="#d5d5d5"> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle"> Example - Ví dụ: <br> Vietnamese - Tiếng Việt</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">Vis duj: <br> Tieesng Vieejt</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">Vi1 du5: <br> Tie61ng Vie65t</td> <td style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana,Arial" align="middle">Vi' du.: <br> Tie^'ng Vie^.t</td> </tr> </table> </center> <p>The keys designated as diacritical marks are to be typed immediately after the vowel they qualify, or at the end of the word, if SmartMark function is selected. To type those keys literally, i.e., without combining them with the preceding vowel, type the escape character, defined to be the back slash key (\), right before entering those keys. For example, while Viet Mode is on with VNI Method selected, if you want to type the character sequence <i><b>a1</b></i> , enter <i><b>a\1</b></i> -- the escape character (<i><b>\</b></i>) will prevent character <i><b>a</b></i> and character <i><b>1</b></i> from combining into character <i><b>á</b></i>.</p> <h4>UNICODE-COMPLIANT FONTS</h4> <p>Unicode has only limited support in Windows 95/98/Me, but these operating systems are still capable of displaying all Vietnamese characters using appropriate Unicode fonts. Full Unicode support is built into Windows NT/2000/XP. Linux and Mac OS 8.5 or greater have begun to provide support Unicode. Mac OS X and Palm OS provide full Unicode support.</p> <p>The following Windows fonts, which come supplied with Windows 98SE/Me/2000/XP, contain many Unicode characters, including Vietnamese:</p> <blockquote> <p><font face="Courier New">Times New Roman, Courier New, Arial, Tahoma, Verdana, Palatino Linotype</font></p> </blockquote> <p><u><b><font color="#ff0000">Note</font></b></u>: Users of Windows 95/98/NT should download the latest versions of these fonts, as the older versions, which are not fully Unicode-compliant, would display question marks (?) or squares () for unsupported characters. They can be downloaded from <a href="http://sourceforge.net/projects/vietunicode/" target="_blank"> VietUnicode Fonts archive</a>. These fonts are also included in WinNT Service Pack 4, in Internet Explorer 5.5 or later, and in Microsoft Office 2000.</p> <p>This list of Unicode fonts is by no means comprehensive, as there are more and more fonts are being commercially developed or expanded to include Unicode characters.</p> <h4>CONTACT</h4> <p>For comments/feedback/input/bug report, please email us at <a href="mailto:nguyenq@users.sourceforge.net">nguyenq@users.sourceforge.net</a>.</p> <hr> </body> </html>