Preliminary OLPC xkb definitions

Jim Gettys jg at laptop.org
Tue Jun 12 07:44:31 PDT 2007


On Tue, 2007-06-12 at 11:04 +0300, Daniel Stone wrote:

> Can you explain what they do?  If they're not boolean (up or down), but
> instead analogue, it sounds like they need to be valuators rather than
> keys.

There are 3 sets of 7 keys, spaced much more closely together than a
"standard" keyboard would.  In regular mode, we ignore every other key,
leaving 4 function keys (e.g. F1-F4).

To use as a volume control, say, you want to be able to determine some
intermediate value; in this case the Fn key is held down, and all 7
keycodes will be generated.  I suppose, if we are very clever, we might
determine yet more intermediate values by the fact more than one of
these keys may be down at once, and what order they went down in, but
we're not trying to be that ambitious.

> 
> > +/*
> > + * The idea of the semantics of "analog keys" is they may be used as though
> > + * they are analog sliders; closer together than conventional function keys,
> > + * and grouped in sets of up to 8 keys. In the original OLPC case, we
> > + * have in 21 keys, in groups of 7 keys, and leave out keys 8 and 16.
> > + * Since there isn't enough space for another row of keys, they are fn keys.
> > + */
> 
> If they're sliders, then they should be valuators (arbitrary values),
> rather than keys (boolean).


They are therefore some value between 0 and 1, but the quantization is
very course.

Are you suggesting we treat them as valuators in Xinput?

> 
> > +#define XK_ViewSource		0xfc22  /* view of source of the "activity" */
> > +#define XK_ViewActivity		0xfc23	/* view of your current "activity" */
> > +#define XK_ViewHome		0xfc24	/* view of your personal environment */
> > +#define XK_ViewGroups		0xfc25  /* view of friends */
> > +#define XK_ViewNeighborhood	0xfc26  /* view of people "near" you in the mesh */
> 
> These could be slightly more generic, but the comments are _extremely_
> OLPC-specific.

OK, we can make the terminology more generic, if you like.

> 
> > +/* "Focus Link" symbols; used to navigate in hypertext systems */
> > +
> > +#define XK_FocusNextLink	0xfc27 /* move to next link */
> > +#define XK_FocusPreviousLink	0xfc28 /* move to previous link */
> 
> XF86XK_Back, XF86XK_Forward?  Or tab and shift-tab?

No, these move the focus to the next link on a page, and the previous
link; they don't actually follow the links involve.  So these are
different semantically, as far as I could see.
                                  - Jim

> 
> Cheers,
> Daniel
> _______________________________________________
> xorg mailing list
> xorg at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xorg
-- 
Jim Gettys
One Laptop Per Child





More information about the xorg mailing list