RE: Keyboard Layouts for Office XP in WIndows 98

From: Peter_Constable@sil.org
Date: Fri Mar 08 2002 - 11:29:08 EST


On 03/08/2002 04:39:49 AM Marco Cimarosti wrote:

>Lateef Sagar wrote:
>> How can I create such a keyboard layout that can be
>> used with Office XP (in Windows 98).
>
>http://www.tavultesoft.com/keyman/
>
>It also works on Win 98.

There are some issues to keep in mind in relation to Win9x/Me. I won't
explain all the gory details (I probably have sometime earlier on this
list), but in a nutshell, for most of the life of Win9x/Me, the characters
that could be entered from a keyboard were limited to only those in some
Windows codepage, and a given layout couldn't mix characters from
different codepages. Late in 2000, MS added a new mechanism that involved
using the system message WM_UNICHAR rather than WM_CHAR. This invention
was quite slick since it could be used without breaking existing software
and without requiring any patches to Windows itself. With old apps, it
would just get ignored (not perfect, but not bad). All it would take to
use it is (a) an input method that will generate it, and (b) apps that
will recognise it.

Tavultesoft Keyman will attempt to communicate with an app using
WM_UNICHAR. If the app doesn't recognise that message, then Keyman will
gracefully resort to plan B -- if the developer of the particular input
method included rules for "ANSI" mode as well as Unicode, then Keyman will
fall back to ANSI mode; otherwise, it deactivates that input method (the
IM can be reactivated when focus is switched to another app).

There are not many apps at this point that support WM_UNICHAR, but Word
2002 is one of them. The other apps in the Office suite do not, however,
with the minor exception that the RichEdit control does support it, so it
is supported wherever those other apps use the RichEdit control (e.g. the
text boxes in search/replace dialogs). (I've been told that Keyman can be
used to give full Unicode input support on Win 98 with Internet Messenger;
I'm guessing it must be using RichEdit.)

If you are using Word 2000, you can obtain an add-in ("WordLink") from
Tavultesoft that will add support for WM_UNICHAR.

One last point: Keyman 5 did not provide support for supplementary plane
characters. This will be added in Keyman 6, which will be available this
spring.

So, if you are on Win9x/Me and want to use Unicode characters that are
*not* supported by a Windows codeage, it can be done with certain
limitations. Here's a summary:

                         Unicode characters that can be input using
                         Keyman 5 Keyman 6 (when released)
----------------------------------------------------------------------------
Word 2000 limited by limited by
                         Windows codepages Windows codepages

Word 2000 w/ WordLink all of BMP all (planes 0 - 16)

other Office 2000 apps limited by limited by
                         Windows codepages Windows codepages

Word 2002 all of BMP all (planes 0 - 16)

other Office XP apps limited by limited by
                         Windows codepages Windows codepages

I'm hoping that when Office dotNet appears that support for WM_UNICHAR
will have been added to other apps in the Office suite. (Chris Pratley,
can you comment on that?)

- Peter

---------------------------------------------------------------------------
Peter Constable

Non-Roman Script Initiative, SIL International
7500 W. Camp Wisdom Rd., Dallas, TX 75236, USA
Tel: +1 972 708 7485
E-mail: <peter_constable@sil.org>



This archive was generated by hypermail 2.1.2 : Fri Mar 08 2002 - 11:49:08 EST