I should point out that Word2002 does not actually support WM_UNICHAR
(actually no OfficeXP app does). Only RichEdit 4.0 (riched20.dll) does.
RichEdit is used in many places in the system and in Office and various
applets such as WordPad, and likely Messenger, so that can be handy but
it is not universal.

However, the recommended method for communicating in Unicode to apps
including Office is to
a) use an NT-based OS such as NT4/Win2000/WindowsXP. Everything just
works.
b) or use the Text Services Framework, which is shipped in WindowsXP and
also in OfficeXp. This is what, I believe Keyman actually uses now to
get Unicode in Word2002 on Win98/Me - or the specific Word (object model
based) method Peter mentions below.

Keep in mind that most OfficeXP installations are now running on either
Win2k or WinXP, and this trend is accelerating. The large majority of
customers upgrade their OS or their entire machine at the time they
acquire major new software.

By the time we ship the next release of Office, the % of people who a)
want to get a new version of Office and who b) insist on remaining with
their old Win9x/ME OS will be very small indeed (not zero, I
understand). Generally speaking, the Office team tries to make sure you
can do everything on older OSes that we offer on the newer ones, but
there is a limit to how much back-porting and investment in workarounds
for older OS limitations we will make . We'd rather invest in more
powerful features for the newer OSes that most people are using. So it
is unlikely we will be improving our multilingual support on Win9x/Me -
instead we'll extend it even further on the newer OSes.

Chris


Sent with OfficeXP on WindowsXP


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] 
Sent: March 8, 2002 08:29
To: [EMAIL PROTECTED]
Subject: RE: Keyboard Layouts for Office XP in WIndows 98

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