:userdoc. .***************************************************************************** :h1 res=001 name=intro x=left y=bottom width=100% height=100%. IME/REXX for Japanese (IMERJ) :p.IME/REXX for Japanese (IMERJ) is a very simple input method editor (IME) for Japanese text. It is mainly intended for use on non-Japanese OS/2 systems where no better IME is available. :nt.Users of native Japanese DBCS versions of OS/2 have access to much more sophisticated OS/2 IMEs (MKK, Writing Heads, and/or ATOK), and so will probably not find IMERJ very useful.:ent. .***************************************************************************** :h1 res=100 name=using x=left y=bottom width=100% height=100%. Using IMERJ :p.The IMERJ user interface is minimalistic, but designed to be straightforward to use. It consists of a menu bar, a tool bar which includes mode buttons and a status (message) area, and the main edit window. :p.Usage information is available on the following topics&colon. :ul compact. :li.:link refid=characters reftype=hd.Character input:elink. :li.:link refid=modes reftype=hd.Conversion modes:elink. :li.:link refid=kanji reftype=hd.Kanji conversion:elink. :li.:link refid=clipboard reftype=hd.Copying and pasting text:elink. :li.:link refid=options reftype=hd.Setting options:elink. :eul. .* --------------------------------------------------------------------------- :h2 res=110 name=characters x=left y=bottom width=100% height=100%. Character Input :p.By default, IMERJ converts romaji-to-kana as typed. In this mode, any valid romaji text typed into the edit window is converted on the fly into Japanese hiragana or katakana. If the optional &osq.Halfwidth&csq. mode is active, however, kana will appear as halfwidth katakana instead. (Kana conversion may also be disabled entirely; see :link refid=modes reftype=hd.Conversion modes:elink. for more information.) :p.Romaji input uses the so-called &osq.wapuro&csq. style common in Japanese input method editors. In default mode, the input sequences shown below will generate hiragana characters when typed in lower case; the same sequences in uppercase will generate katakana (not shown). (In &osq.Halfwidth&csq. mode, halfwidth katakana will be generated when typing in either lower or upper case.) :p. :p.:hp7.Basic Kana:ehp7. :xmp. :artwork name='h_a.bmp' runin. a :artwork name='h_i.bmp' runin. i :artwork name='h_u.bmp' runin. u :artwork name='h_e.bmp' runin. e :artwork name='h_o.bmp' runin. o :artwork name='h_ka.bmp' runin. ka :artwork name='h_ki.bmp' runin. ki :artwork name='h_ku.bmp' runin. ku :artwork name='h_ke.bmp' runin. ke :artwork name='h_ko.bmp' runin. ko :artwork name='h_ga.bmp' runin. ga :artwork name='h_gi.bmp' runin. gi :artwork name='h_gu.bmp' runin. gu :artwork name='h_ge.bmp' runin. ge :artwork name='h_go.bmp' runin. go :artwork name='h_sa.bmp' runin. sa :artwork name='h_shi.bmp' runin. shi / si :artwork name='h_su.bmp' runin. su :artwork name='h_se.bmp' runin. se :artwork name='h_so.bmp' runin. so :artwork name='h_za.bmp' runin. za :artwork name='h_ji.bmp' runin. ji / zi :artwork name='h_zu.bmp' runin. zu :artwork name='h_ze.bmp' runin. ze :artwork name='h_zo.bmp' runin. zo :artwork name='h_ta.bmp' runin. ta :artwork name='h_chi.bmp' runin. chi :artwork name='h_tsu.bmp' runin. tsu :artwork name='h_te.bmp' runin. te :artwork name='h_to.bmp' runin. to :artwork name='h_da.bmp' runin. da :artwork name='h_di.bmp' runin. dzi :artwork name='h_dzu.bmp' runin. dzu :artwork name='h_de.bmp' runin. de :artwork name='h_do.bmp' runin. do :artwork name='h_na.bmp' runin. na :artwork name='h_ni.bmp' runin. ni :artwork name='h_nu.bmp' runin. nu :artwork name='h_ne.bmp' runin. ne :artwork name='h_no.bmp' runin. no :artwork name='h_ha.bmp' runin. ha :artwork name='h_hi.bmp' runin. hi :artwork name='h_fu.bmp' runin. fu :artwork name='h_he.bmp' runin. he :artwork name='h_ho.bmp' runin. ho :artwork name='h_ba.bmp' runin. ba :artwork name='h_bi.bmp' runin. bi :artwork name='h_bu.bmp' runin. bu :artwork name='h_be.bmp' runin. be :artwork name='h_bo.bmp' runin. bo :artwork name='h_pa.bmp' runin. pa :artwork name='h_pi.bmp' runin. pi :artwork name='h_pu.bmp' runin. pu :artwork name='h_pe.bmp' runin. pe :artwork name='h_po.bmp' runin. po :artwork name='h_ma.bmp' runin. ma :artwork name='h_mi.bmp' runin. mi :artwork name='h_mu.bmp' runin. mu :artwork name='h_me.bmp' runin. me :artwork name='h_mo.bmp' runin. mo :artwork name='h_ya.bmp' runin. ya :artwork name='blnk.bmp' runin. :artwork name='h_yu.bmp' runin. yu :artwork name='blnk.bmp' runin. :artwork name='h_yo.bmp' runin. yo :artwork name='h_ra.bmp' runin. ra / la :artwork name='h_ri.bmp' runin. ri / li :artwork name='h_ru.bmp' runin. ru / lu :artwork name='h_re.bmp' runin. re / le :artwork name='h_ro.bmp' runin. ro / lo :artwork name='h_wa.bmp' runin. wa :artwork name='blnk.bmp' runin. :artwork name='blnk.bmp' runin. :artwork name='blnk.bmp' runin. :artwork name='h_wo.bmp' runin. wo :artwork name='h_n.bmp' runin. n' * :exmp. * or enter :hp2.n:ehp2. or :hp2.m:ehp2. followed by any other valid non-vowel character. :p. :p.:hp7.Standard Compounds:ehp7. :xmp. :artwork name='h_kya.bmp' runin. kya :artwork name='h_kyu.bmp' runin. kyu :artwork name='h_kyo.bmp' runin. kyo :artwork name='h_sha.bmp' runin. sha / sya :artwork name='h_shu.bmp' runin. shu / syu :artwork name='h_sho.bmp' runin. sho / syo :artwork name='h_ja.bmp' runin. ja / zya :artwork name='h_ju.bmp' runin. ju / zyu :artwork name='h_jo.bmp' runin. jo / zyo :artwork name='h_cha.bmp' runin. cha :artwork name='h_chu.bmp' runin. chu :artwork name='h_cho.bmp' runin. cho :artwork name='h_nya.bmp' runin. nya :artwork name='h_nyu.bmp' runin. nyu :artwork name='h_nyo.bmp' runin. nyo :artwork name='h_hya.bmp' runin. hya :artwork name='h_hyu.bmp' runin. hyu :artwork name='h_hyo.bmp' runin. hyo :artwork name='h_bya.bmp' runin. bya :artwork name='h_byu.bmp' runin. byu :artwork name='h_byo.bmp' runin. byo :artwork name='h_pya.bmp' runin. pya :artwork name='h_pyu.bmp' runin. pyu :artwork name='h_pyo.bmp' runin. pyo :artwork name='h_mya.bmp' runin. mya :artwork name='h_myu.bmp' runin. myu :artwork name='h_myo.bmp' runin. myo :artwork name='h_rya.bmp' runin. rya :artwork name='h_ryu.bmp' runin. ryu :artwork name='h_ryo.bmp' runin. ryo :exmp. :p.:hp7.Additional Katakana Compounds:ehp7. :p.The following additional katakana for non-Japanese syllables may be entered using these sequences (in upper case only). There are no corresponding hiragana compounds. :xmp. :artwork name='k_kwa.bmp' runin. KWA :artwork name='k_gwa.bmp' runin. GWA :artwork name='k_she.bmp' runin. SHE :artwork name='k_je.bmp' runin. JE :artwork name='k_che.bmp' runin. CHE :artwork name='k_tsa.bmp' runin. TSA :artwork name='k_tse.bmp' runin. TSE :artwork name='k_tso.bmp' runin. TSO :artwork name='k_ti.bmp' runin. TI :artwork name='k_tu.bmp' runin. TU :artwork name='k_di.bmp' runin. DI :artwork name='k_du.bmp' runin. DU :artwork name='k_dyu.bmp' runin. DYU :artwork name='k_fa.bmp' runin. FA :artwork name='k_fi.bmp' runin. FI :artwork name='k_fe.bmp' runin. FE :artwork name='k_fo.bmp' runin. FO :artwork name='k_wi.bmp' runin. WI :artwork name='k_we.bmp' runin. WE :artwork name='k_ye.bmp' runin. YE :artwork name='k_va.bmp' runin. VA :artwork name='k_vi.bmp' runin. VI :artwork name='k_vu.bmp' runin. VU :artwork name='k_ve.bmp' runin. VE :artwork name='k_vo.bmp' runin. VO :exmp. :p.:hp7.Doubled Consonants:ehp7. :p.A doubled or long consonant is entered by typing the first character of the syllable twice, for example :hp2.kka:ehp2. or :hp2.tte:ehp2.. This does not apply to vowels or the &osq.n&csq. kana. :p. :p.:hp7.Small Forms:ehp7. :p.&osq.Small form&csq. kana may be entered explicitly by typing :hp2.x:ehp2., followed by that kana's input sequence in lower or upper case, as appropriate. (This only applies to kana which have small forms.) :p. :p.:hp7.Punctuation and Special Characters:ehp7. :p.In kana conversion mode (fullwidth or halfwidth), punctuation marks are converted as follows&colon. :xmp. , (comma) --> :artwork name='p_comma.bmp' runin. (ideographic comma) . (period) --> :artwork name='p_period.bmp' runin. (ideographic period) - or _ (hyphen/underscore) --> :artwork name='p_long.bmp' runin. (elongated vowel mark) | (pipe) --> :artwork name='p_dot.bmp' runin. (mid-dot kana) ' (apostrophe) --> :artwork name='p_lquot.bmp' runin. (left ideographic quote) " (quotation mark) --> :artwork name='p_rquot.bmp' runin. (right ideographic quote) :exmp. The characters on the left may be entered literally by switching to ASCII input mode (halfwidth or fullwidth). :p.Other symbols are entered verbatim (as halfwidth or fullwidth characters, depending on the current conversion mode), if they exist in the current codepage. The same applies to numbers and the space. :p.Note that single-width tilde and backslash characters do not exist in the Japanese codepage, as the Japanese version of ASCII replaces them with the yen symbol and the overline, respectively. In addition, under codepage 932 there is no way to enter the latter characters using a non-Japanese keyboard. Therefore, the following special key combinations are available&colon. :lm margin=2. :table rules=none frame=none cols='20 20 25'. :row. :c.:hp5.Key Combination:ehp5. :c.:hp5.Halfwidth Mode:ehp5. :c.:hp5.Fullwidth Mode:ehp5. :row. :c.Alt + / :c.yen symbol :c.fullwidth backslash :row. :c.Alt + 0 :c.overline :c.fullwidth overline :etable. :lm margin=1. .* --------------------------------------------------------------------------- :h2 res=120 name=modes x=left y=bottom width=100% height=100%. Conversion Modes :p.IMERJ has four different input modes available. The mode may be selected using the buttons just above the edit window; information about the current mode is displayed in the message area next to them. You can also select the mode using the :hp1.Input:ehp1. menu or the corresponding :link refid=keys reftype=hd.keyboard shortcuts:elink.. :p.In the default mode, lowercase romaji input is converted into hiragana, and uppercase romaji is converted into katakana. If you are in another input mode, you can return to the default mode by selecting &osq.Kana&csq. mode. :p.You can also switch to &osq.Halfwidth&csq. mode, in which all romaji text (upper or lowercase) is converted into halfwidth katakana. :p.There is also a &osq.Fullwidth&csq. mode which causes so-called fullwidth Latin text to be entered when the corresponding normal letters are typed. :p.Finally, kana conversion can be disabled entirely by selecting the &osq.No conversion&csq. mode. This will cause keyboard input to be entered as typed. :p.The four input modes are summarized below&colon. :dl tsize=10 break=fit. :dt.:artwork name='kanafull.bmp' runin. &rbl. Kana (default) :dd.Typed text is converted into hiragana (for lowercase text) or katakana (for uppercase text), if possible. If the text does not correspond to any kana, it will be converted to fullwidth ASCII if possible; or, failing that, entered verbatim. :dt.:artwork name='kanahalf.bmp' runin. &rbl. Halfwidth kana :dd.Typed text is converted into halfwidth katakana, if possible. If the text does not correspond to any kana, it will be entered verbatim. :dt.:artwork name='latnfull.bmp' runin. &rbl. Fullwidth ASCII :dd.No kana conversion is performed. ASCII characters are converted to their fullwidth forms if those exist; other text is entered verbatim. :dt.:artwork name='latnhalf.bmp' runin. &rbl. No conversion :dd.Typed text is entered verbatim (as long as the current codepage supports it). :edl. .* --------------------------------------------------------------------------- :h2 res=130 name=kanji x=left y=bottom width=100% height=100%. Kanji Conversion :p.Kanji conversion is only available if the EDICT and/or auxiliary dictionaries are installed and configured under &osq.Options&csq.. :p.To convert text into kanji, highlight the desired word (or single-kanji reading) in the edit window. Then choose one of the conversion actions from the &osq.Kanji&csq. menu (or use the corresponding :link refid=keys reftype=hd.keyboard shortcut:elink.)&colon. :dl break=fit tsize=20. :dt.&osq.Dictionary word&csq. :dd.This will search for a word matching the specified reading in the EDICT dictionary. This option is disabled if EDICT is not installed. :dt.&osq.Single kanji&csq. :dd.This will search for a single kanji with the selected reading in the KANJIDIC dictionary. This option is disabled if KANJIDIC is not installed. :edl. :p.If more than one possible dictionary entry is found that matches the selected text, a list of candidates will pop up. Double-click on the desired candidate to select it, or move the cursor to it and press Enter. To cancel without selecting any candidate, press Esc. :p.If only one matching candidate is found, that candidate will be selected automatically. :p.If no matching candidates are found, no action will be taken. :p.When a candidate is selected, it will be inserted into the edit window in place of the originally highlighted text. :p. :p.:hp7.Limitations:ehp7. :p.Kanji conversion is subject to a number of limitations&colon. :ul. :li.Only individual words or single-kanji readings are supported. Clause-based conversion is not possible. :li.The word or kanji reading may not have any extra trailing characters selected. :li.Only full-width hiragana or katakana text is supported. :li.Conversion of conjugated kanji verbs or adjectives is not supported. You must either type the word in dictionary form, or else use the &osq.Single kanji&csq. option to choose the correct kanji one by one. :li.Support for proper nouns (names) is limited, as the EDICT dictionary does not cover names. The default auxiliary dictionary has a few hundred of the more common ones, and you can add more yourself (see :link refid=auxdict reftype=hd.customizing the auxiliary dictionary:elink.). You can also try to convert the individual kanji using the &osq.Single kanji&csq. option. :eul. .* --------------------------------------------------------------------------- :h2 res=140 name=clipboard x=left y=bottom width=100% height=100%. Copying and Pasting Text :p.Once you have entered the text you need, you can copy and paste it into whatever application you intend it for. Use the following keyboard shortcuts to cut, copy, and paste text&colon. :dl compact tsize=15. :dt.Ctrl+Ins :dd.Copy text :dt.Shift+Ins :dd.Paste text :dt.Shift+Del :dd.Cut text :edl. :p.Text is added to the clipboard in both plain text and Unicode formats. Note that not all applications support Unicode text. Plain text clipboard data is in codepage 932 (Shift-JIS) format, so any target application which does not support Unicode will need to be running under codepage 932 in order to display Japanese text intelligibly. :nt.Use of mouse chord actions to copy or paste text is not supported. (Copying text in this way may appear to work, but Unicode clipboard data will not be generated.):ent. :p.When pasting text into IMERJ, priority is given to clipboard data in Unicode text format. IMERJ will attempt to convert such text into Shift-JIS (codepage 932) text format. If no Unicode text is available for pasting, IMERJ will paste any plain text that is currently in the clipboard. .* --------------------------------------------------------------------------- :h2 res=150 name=options x=left y=bottom width=100% height=100%. Setting Options :p.Selecting &osq.Options&csq. from the :hp1.Program:ehp1. menu brings up the IMERJ options dialog. :dl break=fit tsize=18. :dt.EDICT :dd.Use this option to configure the location of the EDICT dictionary file. This file can be located anywhere on your system. You can use IMERJ without configuring EDICT, but without it kanji conversion of dictionary words will not be available (other than words in the auxiliary dictionary, if one is configured). :dt.KANJIDIC :dd.Use this option to configure the location of the KANJIDIC dictionary file. This file can be located anywhere on your system. You can use IMERJ without configuring KANJIDIC, but without it the single-kanji conversion feature will not be available. :dt.Auxiliary :dd.This option allows you to specify an :link refid=auxdict reftype=hd.auxiliary dictionary:elink. file. :dt.Don't warn about uncopied text when exiting :dd.By default, IMERJ displays a warning message on exit if the current edit window contents have not been copied to the clipboard. Enable this checkbox to turn off this warning. :edl. :h3 res=151 name=appearance x=left y=bottom width=100% height=100%. Changing Fonts and Colours :p.Besides the Options dialog, there are two other ways to customize IMERJ. :p.First, you can change the main edit window font by dragging and dropping a font from the OS/2 Font Palette onto the IMERJ window. Although any OS/2 font may be used, you are recommended to only use fonts with Japanese text support. :p.Second, you can set the edit window's foreground and background colours by dragging and dropping them from an OS/2 colour palette object. Drag and drop a colour normally to set the background; drag and drop while holding down the Ctrl key to set the text colour. :p.The IMERJ user interface (other than the edit window) will automatically use the system default "Window Text" font. This is defined in the OS/2 user profile (OS2.INI) and can be set using the OS/2 Scheme Palette (note that only the system-wide scheme is used; IMERJ does not support per-window scheme settings). .* --------------------------------------------------------------------------- :h1 res=200 name=auxdict x=left y=bottom width=100% height=100%. Customizing the Auxiliary Dictionary :p.IMERJ does not provide a built-in graphical tool for adding words to the dictionary, but you can do so by editing (or replacing) the auxiliary dictionary file. The default auxiliary dictionary included with IMERJ is called AUXDICT, and contains around 500 common surnames and place names. :nt.If you customize the auxiliary dictionary, you are recommended to copy AUXDICT to a new file name, and customize that one (setting the new file as the auxiliary dictionary under :hp1.Options:ehp1.). That way, if you reinstall IMERJ (or install an updated version), there will be no risk of accidentally overwriting your customized dictionary with AUXDICT from the IMERJ package.:ent. :p.The auxiliary dictionary is a plain text file which uses a format similar to EDICT. Each line is a complete word entry with the following syntax&colon. :xmp. kanji [reading] comments :exmp. or :xmp. kana comments :exmp. In the first format, the line begins with the word in its target kanji (or mixed kanji-kana) form, followed by a normal (ASCII) space, followed by the reading (in hiragana or katakana) enclosed in square brackets. This may be followed by an optional comments field, which can contain anything you like up until the end of the line; IMERJ will ignore this field. :p.The second format is for kana-only words that contain no kanji; in this format the reading field is omitted, and IMERJ compares the requested reading to the first field instead. Since IMERJ checks both hiragana and katakana forms of the requested reading, this second format can be used to match a hiragana reading to a katakana word (or vice versa). :p.Unlike the EDICT and KANJIDIC dictionaries, the auxiliary dictionary must use Shift-JIS encoding; this is the standard Japanese text encoding under both OS/2 and Windows. (EDICT and KANJIDIC, conversely, use EUC-JP encoding, which is common on Unix systems.) :p.Thus, you can edit the auxiliary dictionary file with a text editor &ndash. but Japanese text will only be legible if the text editor is running under codepage 932, or else natively supports displaying Shift-JIS text. .***************************************************************************** :h1 res=800 name=keys x=left y=bottom width=100% height=100%. Keys Help :p.Besides :link refid=characters reftype=hd.character input:elink., IMERJ supports various keyboard commands and shortcuts, which are summarized here. :p.:hp5.Clipboard actions:ehp5. :dl tsize=22 compact. :dt.Ctrl+Ins or Ctrl+C :dd.Copy text. :dt.Shift+Del or Ctrl+X :dd.Cut text. :dt.Shift+Ins or Ctrl+V :dd.Paste text (replacing any currently-selected text). :edl. :p.:hp5.Text conversion:ehp5. :dl tsize=22 compact. :dt.Ctrl+F :dd.Switch to fullwidth ASCII input mode. :dt.Ctrl+H :dd.Switch to halfwidth kana input mode. :dt.Ctrl+K :dd.Switch to standard kana input mode. :dt.Ctrl+N :dd.Switch to direct input mode (no conversion). :dt.Ctrl+S :dd.Try to convert the currently-selected text into a single kanji character based on known readings. :dt.Shift+Space :dd.Try to convert the currently-selected text into a kanji word (dictionary form). :edl. :p.:hp5.Other actions:ehp5. :dl tsize=22 compact. :dt.Backspace :dd.Delete the character before the cursor (also deletes any currently-selected text). :dt.Ctrl+/ or Ctrl+A :dd.Select all text :dt.Ctrl+Z :dd.Undo the last edit action (if possible). :dt.Del :dd.Delete the character after the cursor (also deletes any currently-selected text). :dt.Esc :dd.In the main edit window&colon. deselect any current selection. In the kanji conversion list&colon. close the list and cancel the conversion. :dt.F3 :dd.Exit IMERJ. :edl. .***************************************************************************** :h1 res=900 name=notices x=left y=bottom width=100% height=100%. Notices :p.IME/REXX for Japanese (IMERJ) is written by Alex Taylor (alex@altsan.org), using :hp1.Watcom VX-REXX version 2.1d:ehp1.. :p.IMERJ uses the EDICT and KANJIDIC dictionaries by Jim Breen. :dl compact tsize=14. :dt.EDICT&colon. :dd.http&colon.//www.edrdg.org/jmdict/edict.html :dt.KANJIDIC&colon. :dd.http&colon.//www.edrdg.org/kanjidic/kanjidic.html :edl. :p.:hp7.License Information:ehp7. :p.IME/REXX for Japanese .br (C) 2007-2019 Alexander Taylor :p.This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. :p.This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. :p.You should have received a copy of the GNU General Public License along with this program. If not, see <.http&colon.//www.gnu.org/licenses/>.. :euserdoc.