Keysym additions.

Jim Gettys jg at laptop.org
Thu Sep 21 10:57:34 PDT 2006


We've been finishing up our keyboard design.  As in many other places,
we have a much freer hand in our design, and we'd be foolish not to take
advantage of that. So I've been keysymming again.

Besides this, there are a few other special functions we're putting on
the keyboard.

Before I prepare a detailed patch, I want to see if there are any
objections and/or suggestions.


1) I'm disturbed there are no comments by any of the XF86 keysyms we
added some years ago around multimedia, etc.  I think comments should be
added to those to reduce the probability of confusion.  I plan to try to
do that as well, to reduce ambiguity of intended meaning.

2) Should we continue in the XF86 name space for additional X.org
keysyms:  I think not; that way we can't have collisions with XFree's
allocations.

3) Our keyboard will have a number of interesting features; between most
of the function keys (F1-F12) we are putting intermediate keys for uses
we plan.  We also are grouping sets of function keys together, where in
some applications, hitting any of the function keys may be interpreted
to be the same (so I'll be assigning the same keysym to a set of
function keys). Exactly how we plan to use them will become clear in
Sugar over the next few months.

We plan to use the recently proposed XKF86_KeyboardLightOnOff, though I
suggest we don't call it that, but delete the F86 part of the symbol
name.

The concrete proposal of keysyms to add are:

a) XK_F1_5 through XK_F34_5, as intermediate keysyms for the F1-F35
range

b) XK_FuncGroup1 - XK_FuncGroup5 (5 sets of function keys)

c) And a few more vanilla items:
XK_ViewSource /* we want the kids to see the source to the programs
	 they run *easily **/
XK_Frame    /* we have a notion of a "frame" in our UI */
XK_Chat	    /* invoke instant messaging */
XK_Grab_L  /* when grabbing things like maps to scroll them around */
XK_Grab_R  /* when grabbing things like maps to scroll them around */

d) We also plan to have the fn key generate a keycode, rather than being
entirely silent; it turns out I could not find a definition for it:

XK_Fn	/* keysym if the Fn key is kind enough to send a code */

e) Last, but not least, kids may be learning languages.  So we'd like
some way to indicate a mode switch to a different language.  But given
the number of languages in the world, it isn't clear to me we want to
add a mode switch for each and every of hundreds, or even thousands of
languages.  (or do we?  the most common languages is just a 100-200
languages, IIRC).

If we don't want to add such a plethora of mode switches to the list,
I'd suggest just 

XK_Language_switch_1
XK_Language_switch_2

                                   - Jim
-- 
Jim Gettys
One Laptop Per Child





More information about the xorg mailing list