Joanna About this site

About

How this site is organized and what it's for

Weblog start page

The start page contains the most recent 15 articles.

Home page
The main home page of my website, not my weblog. Currently not used.
------------------
Articles by month
Click here to get all the articles for a particular month.
This month's articles (if any)
Current month
Today's articles (if any)
Articles dated 2008/10/13 only

------------------
Subtopics

------------------
My email address
Site map
Search my weblog
Search for text on this site
You may have to use search
if I move files around!
Listing of all articles by date
Moving man
Flavours
There's more than one way to view this weblog; these links display the current page in other formats.
External links
These are a few of my favourite sites.
T E S T
Slashdot yesterday

Copyright © 2003-2007 Alternate Worlds Publishing, Boston MA USA


powered by blosxom -- www.blosxom.com
Wenhua dageming de zhongyao jiaoxun shi bixu fandui geren mixin
If I have been able to see further, it is because I am surrounded by midgets.
Never ascribe to stupidity that which can adequately be explained by malice.
"Your argument's repugnant and intriguing." "That's kinda my thing."

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
2006 May 04 [ Thu ]

Using Khmer in Windows: Limon, USA International, Unicode, usp10.dll

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