Re: [I18n] Keysyms for Unicode values

2004-04-15 Thread Markus Kuhn
Dave Williss wrote on 2004-04-14 22:39 UTC:
 I've noticed that for the most part, XKeysym values are just
 the Unicode value of the character.

No, look closer, they are not. Unicode did not exist yet when keysyms
were defined, therefore, keysyms are in a sense something similar to
Unicode, but the code positions are competely different.

 However, there are
 obviously Unicode values which would overlap keysyms
 in the 0xFE00 to 0x range which would conflict.
 
 I've also noticed references to passing keysyms with
 the 0x0100 bit set to mean that the lower part of
 the keysym is a Unicode value.

 So my question is, for what Unicode values do I _need_ to
 use the 0x0100 bit and what ones should I not?
 I assume that if just set it for everything, old X clients
 would be confused by it and not know what to do.

The relationship between the keysyms and Unicode is currently being
addressed in a revision of the X11 protocol standard appendix that
officially defines the keysyms.

You can watch some of this process on the X.Org wiki page

  http://freedesktop.org/XOrg/KeySyms

In a nutshell: for characters for which a keysym already exists (with a
few exceptions where the meaning of the keysym is unclear), use the
existing keysym value. For characters for which no keysym exists, add
0x0100 to the Unicode value and use that instead. An official
round-trip compatible Unicode mapping table for the existing keysyms is
under preparation and will be part of the next major X.Org release.

http://www.cl.cam.ac.uk/~mgk25/unicode.html#x11

Markus

-- 
Markus Kuhn, Computer Lab, Univ of Cambridge, GB
http://www.cl.cam.ac.uk/~mgk25/ | __oo_O..O_oo__

___
I18n mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/i18n


[I18n] Keysyms for Unicode values

2004-04-14 Thread Dave Williss



I've noticed that for the most part, XKeysym values 
are just 
the Unicode value of the character. However, 
there are
obviously Unicode values which would overlap 
keysyms
in the 0xFE00 to 0x range which would 
conflict.

I've also noticed references to passing keysyms 
with
the 0x0100 bit set to mean that the lower part 
of
the keysym is a Unicode value.

So my question is, for what Unicode values do I 
_need_ to
use the 0x0100 bit and what ones should I 
not?
I assume that if just set it for everything, old X 
clients
would be confused by it and not know what to 
do.


-- Dave Williss--Meddle not in 
the affairs of dragons,  for you are crunchy and taste good with 
catsup