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: <[EMAIL PROTECTED]>


Reply via email to