I hope that last comment didn't come across as snippy.  It merely meant to 
point out that, for any piece of software, there are folks who use it and folks 
who don't.  The idea that there should be more than one way to do everything 
goes all the way back to when the students at Berkeley thought they could outdo 
the professionals at AT&T, and BSD forked from SysV, and we got two of a lot of 
things.  It seems to make Unix people nervous if they feel they don't have a 
choice about what to run.

I have been looking mostly at what do we need around the edges of Wayland so we 
can get from a world that is all X to a world that is as much Wayland as 
possible.  One of the main things I could think of that is written with the 
older toolkits and still widely used is xterm.

I have also been looking at the input side of things, trying to understand 
exactly how device enumeration is done and concerning how events get from the 
driver to the application, and a really deep dive into Xkb.

I do have something for discussion though.

Pardon me while I do a little history lesson for those who are younger and 
weren't around for this.

X was released commercially in around 1987, a task which this author played 
some part in.  At that time, non-ASCII characters were handled in two ways.  
The languages that use ideographs (you will see them referred to as "CJK", 
Chinese, Japanese, Korean) were using 16-bit characters; this is how we got the 
wchar_t type.  The Western languages were using 8-bit characters and shift 
codes to change what part of the character encoding space was mapped to what 
character repertoire.  The earlier attempts at this were the "DEC 
Multinational", "DEC Technical", "DEC Cyrillic" and so on that you will see if 
you are reading documentation for the VT terminals.  These codes later got 
standardized as ISO/IEC 8859 and ISO/IEC 2022 for the shifting part.  What 
happened was that the X people assigned keysym codes arbitrarily for all of 
these characters, because there wasn't any standard they had they could conform 
to.

The early work on the VT terminals also gave us the idea of Compose, so you 
could type Compose c comma and the terminal itself would put out "C with 
cedilla".  These are now the "dead keys" or "combining characters" of Unicode.

The Unicode project wasn't started until 1991 or so.  Now we have Unicode 
assignments for every character on the planet.  X keysyms can now be of the 
form 0x01kkkkkk, where kkkkkk is the Unicode character, in addition to whatever 
keysym they used to have.  There are a couple thousand of the legacy codes 
clogging up the mapping algorithm.

The Master List of X keysyms is in /usr/include/X11/keysymdef.h.

So the question is, given that Wayland is in many ways a fresh start, could we 
get to a place where we return the Unicode keysyms instead of the legacy 
keysyms for the glyphs where they differ and the clients can handle it, and 
ditch the legacy keysyms entirely.
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to