Danny's Weblog
This section is for articles which relate mainly to the Cambodian language,
often referred to as Khmer.
As with the rest of my site, the articles are presented in *reverse*
chronological order. Also, they tend to represent things which I have
discovered or speculated about which *supplement* the standard
materials: this is not intended to present a free teach-yourself-Khmer
course.
You may also be interested in articles which refer to Asian languages in
general:
Asia/Language-misc
I recently upgraded to a new drive on my laptop, and have tried to
keep notes of what I needed to do to enable Khmer, both using the
Limon-type fonts and Unicode. The following is a list of what I
had to do. I have made a lot of postings about related issues, eg
creating web pages that use Limon fonts, which are contained in
the folder for this article (in reverse chronological order):
www.panix.com
[http://www.panix.com/~dannyw/weblog/Asia/Cambodia/Khmer-language/index.html]
Several of these stages are laborious and tedious, especially
setting up the normal.dot template for MS Word, but once that
has been done you can copy it to any other machine (with the
same version of Word). More significantly, you need some
familiarity with Cambodian, so if you know very little Cambodian
and need to set up your computer for your girlfriend several
steps will be very difficult.
On the other hand I think much of the information in this document
will be useful to anyone who needs to set up any language using
the "US International" keyboard.
1. I'm assuming you start from a clean copy of Windows 2000 or XP with
service packs and whatnot already installed.
2. In order to handle Khmer Unicode, you must have a recent copy
of the usp10.dll file installed. My understanding is that this is
provided with XP SP2. I use W2000 myself, so I needed to get usp10.dll
from somewhere. The easy way is to install MS Office 2003. Another
way is to copy it from an existing installation, like an internet cafe.
Another way is to join MS Volt. I tried to do so, and it appeared to
work, but then some problem happened: I vaguely recall it wanted me
to set up a MS Passport account, which is not something I want to do
on an internet cafe machine.
3. For Limon-style fonts, you need to install the fonts themselves.
They're easy to find in Cambodia of course; somewhat less easy if
you're outside the country. There is nothing special about the font
installation itself. (The "magic" needed to, for instance, position
the vowels above or below the consonant is already built into the
standard font system, and does not need the extra features in
usp10.dll, which is only for Unicode.)
4. To actually use the Limon fonts, you need to install the
"USA-International" keyboard. (As seems to be standard in Windows-speak,
a term which normally refers to a piece of hardware is used to refer
to a software driver for such hardware. Death to Microsoft!)
Go to Control panel – Regional and language options – Languages –
Details – Text services and input languages – Settings. Select
Add, and select Input language: English (United States) and keyboard
layout/IME: United States-International. Click OK, going back to the
Text services... window. Under Preferences – Language bar, I like
to make sure that the task bar shows a button for the language type
(eg EN for English, CA for Cambodian (Unicode), etc). This appears to
be the default when you install a second keyboard, but you may be
starting from a different setting.
5. Now click on Key settings. By default, every language you install
goes ahead and grabs some key combinations to allow you to flip
keyboards without using the mouse. I think this is an absolutely
terrible idea. I advise you to check the list carefully and delete
any ctrl-alt or ctrl-alt-shift combinations that are needed for
Limon. (MS seems to specify only left-alt combinations for this
purpose, so if you run into problems entering Khmer, try using
the right-alt key.) Internet cafes in Cambodia tend to install keyboard layouts
for Chinese, Japanese and Korean, so the machine I am currently typing
on has a long list. At a minimum, delete the "switch between languages"
function, left alt-shift, which can cause *extreme* confusion if you
sometimes hit the keys in different order.
6. Now you need to change the current keyboard layout to US International.
Unfortunately Microsoft made the taskbar display *more confusing*
in XP. In Windows 2000, you can left-click on the language symbol (EN),
and it will show English (United States) – US as one option and
English (United States) – US International as another option. In
XP, the menu just shows English (United States). To get a different
keyboard you need to right-click the EN and select "settings". Even
then, I cannot find a way to just change the *current window* to
US-International. Instead, you have to change the *default* language
to English (United States) – United States-International. Then click
Apply, then OK. (Maybe *this* is why they provide the blasted
keyboard shortcuts.) Be aware that if you have "US International"
selected when typing English text, it will do strange things when
you try to use the single and double quote characters, because they
are intended to start multikey sequences for European accented
characters; to get the ordinary quote characters, type a space
immediately afterwards.
7. You should be ready to try entering text in Limon now. I personally
use a Limon keyboard at home, but it's not really necessary: the only
Limon keyboards I've seen at Internet cafes are ones I donated.
However, you do need a "cheat sheet" to check where the characters are.
In Cambodia it's easy to get a printout of this from computer and cd
stores, eg PTC on Monivong, but I haven't been able to find a
downloadable version. I have some blurry photos of an actual physical
Limon keyboard on this blog somewhere.
Load Wordpad and try entering some text. If any ctrl-alt combinations
produce usable characters – eg ctrl-alt-z produces a jerng thaa –
then US International is functional.
8. A huge problem however is that many kinds of software grab the key
combinations that you need. Some – like programmer's editors –
simply discards ctrl-alt, eg producing the character for "g" instead
of ctrl-alt-g. Other software binds many key combinations for other
uses. I will describe what to do for MS Word below.
9. Note that when you make these changes to Word, it saves them in
its template file: normal.dot. This is stored in a hard-to-find
location. On my current machine it's at:
c:\Documents and Settings\QW02\Application Data\Microsoft\Templates
You can check the location with Tools – Options – File locations.
You need to understand that when you change the template, it affects
*new* files – not *old* ones created with a different template! If
you want to add Khmer text to existing files, you'll have to create
a *new* file and paste the old file into it.
You can find pre-fixed versions of normal.dot included with the
khmer fonts in many cases, but these appear to have been created
under old versions of Word, and may contain all kinds of undesired
settings, and macros. If only because of the version issue –
MS Word is notorious for flaky behavior when you mix versions –
I think it's worth the effort to create your own clean normal.dot
so I describe the process here (as far as I know this info is
available nowhere else on the web, and is probably useful for
any language using US-International).
Additonally you may have important settings stored in your existing
normal.dot file which you want to preserve.
10. You will have to disable *many, many* "keyboard shortcuts".
In addition, it has many automation features enabled by default
which work *very badly* when you're entering text in Khmer.
(The first one you will probably notice is the one that automatically
capitalizes words at the start of a sentence!)
-1. First go to Tools – Automation and turn off *all* the autocorrect
options
-2. Then Tools – Options – Spelling and Grammar – turn off all
options (Some of these sound like the same as the Automation options
but apparently they aren't)
-3. Then Tools – Customize – Keyboard. I could not find a quick
way to do this: you have to laboriously click through every single
blasted function checking for ctrl-alt and ctrl-alt-shift
combinations. This took me about 30-60 mins of work. I advise you
to quit out of Word after just a couple of minutes and restart it
to check that your changes have been saved in normal.dot as
expected, before going on to complete the job.
-4. However, this interface does *not* allow you to change every
keyboard shortcut! There are still several which need a different
trick. This was shown to me by Piseth, seemingly the most clueful
guy in this internet cafe. You can use the "symbol" feature to
override *any* shortcut (as far as I've checked). Props to Piseth!
– 1. Go to Insert Symbol (the route to this seems to be different
on this machine to the route on my laptop, so I'm not sure what
the default route is). In the Symbols tab, select a Limon font,
eg Limon S1. (Word may display the font name in its own font, which
makes it very hard to read at the character size in the dialog).
– 2. *Then* select "(normal text)" as the font. In my tests, this
has the (non-obvious) effect of allowing you to select the desired
glyph from the Limon S1 font at this time, but subsequently –
in use – the system will grab the character with the corresponding
*character code* from the current font. So the keyboard shortcuts
we set up will work even when we're in the middle of typing text
in Limon F3, or whatever.
– 3. Now you have to *eyeball* the font table shown, and compare it
with a keyboard layout and the list of undesired shortcuts below
to locate which shortcuts need to be reassigned. Regrettably, the
font table is very hard to read at the font size MS used – diacritics
are particularly bad. I found myself using guesswork sometimes.
– 4. At the moment I have only found two undesired shortcuts in Limon:
cltr-alt-shift-hyphen, and ctrl-alt-equals. By contrast, the Unicode
keyboard seems to have an assigned function for *every* key
combination. I have not yet keyboarded much in Unicode so I don't
have a good list. However, certainly ctrl-alt-5 – which produces
the "euro" character *and* switches to the Times font – needs to be
fixed. (It's not necessary for Limon.)
– 5. Piseth actually created his own normal.dot casually, simply
by keying in Khmer text over a period of about a month and fixing
each undesired shortcut as he encountered it.
11. The rest of this info is for Unicode only.
12. The files needed can be downloaded here:
www.khmeros.info
[http://www.khmeros.info/drupal/?q=en/download]
You probably want:
-1. Khmer Unicode Installer for Windows
-2. Documents
The "installer" includes the following features:
-1. Searches for the usp10.dll file on your system and makes it
available to all programs (more difficult than it sounds, because
this is a protected system file)
-2. Installs several Unicode Khmer fonts
-3. The Khmer unicode keyboard driver (has to be designated
CA, which officially stands for Catalan, not Cambodian)
The documents include a PDF of the keyboard layout and a PDF
describing how to use it (distinctly different from the Limon
layout).
13. If you are using the Symbol trick to reassign shortcuts while
inside Word using the Unicode keyboard, remember to switch back
to the "US English" keyboard when you're entering the key combination!
If you don't the Unicode keyboard driver will dutifully send not the
key combination, but the Unicode character code to Word. Confusion
will ensue.
14. The display of characters while you're actually entering them is a
little disconcerting. Suppose you enter a consonant, then press the
jerng key to get a jerng consonant, then the key for the desired
jerng consonant. At that point the jerng consonant *still* displays
above the line. Probably if you understand Khmer better than me this
makes sense. Anyhow, once you enter *another* consonant the one you
wanted to be jerng will be shoved under the line, as desired.
I hope this information was useful. There may be a great deal more
information on this site that is relevant to what you need.
Take
a look at the "site map" display at left; you
can click on a topic to see many recent items on that topic.
This page is available for searching.
Debug: hittotal: 24 startban: 0
dancookie: endbandate:
banned: 0 tempdate:
tert: jse: jsno jsh: 24