New keyboard layouts

Paul Fox pgf at
Wed Apr 28 13:43:59 EDT 2010

benjamin m. schwartz wrote:
 > On Wed, 28 Apr 2010, Walter Bender wrote:
 > > On Wed, Apr 28, 2010 at 12:24 PM, Tiago Marques <tiagomnm at> wrote:
 > >> I was just looking at the layout again and just noticed the new arrow keys
 > >> placement.
 > > We debated this one. A shorter shift key would be difficult to type
 > > on. We opted to emulate the hjkl vi arrangement.
 > Keyboard layout is virtually the ultimate bikeshed painting problem  
 > ... but here's my opinion anyway.
 > Ins and Del are Harmful.  You probably know Ins because when you  
 > accidentally bump it, your editor switches into "overwrite" mode, and  
 > every character you type deletes another until you figure out what  
 > happened and hit Ins again.  "Del" is the reverse erase that nobody  
 > wants.  Apple, and the XO-1, have eliminated Ins and relegated Del to  
 > Fn+Erase.  I recommend removing both.

part of the impetus for this keyboard is that it be more "normal", for
use by older students, perhaps in non-sugar environments.  so i think
that's why some of the legacy keys have come back.  (but i agree --
i occasionally use Del in a web editing form to delete forward, but
could easily live without it or Insert.)

 > Getting rid of those keys frees up valuable space that can be used,  
 > for example to move += to the top row, replaced by ?, replaced by  
 > up-arrow.  No more hjkl.

i'd far rather have as much of the punctuation in their correct places
as possible.  i even tried to get walter to shorten the enter key, to
make room for the '" between ;: and enter.  he didn't go for it.  :-)

 > Some other notes:
 > 1. fn is a bad key because software can't reuse it.  For example, on  
 > the XO-1 we tried to make fn+F1 send an F1 press to the activity  
 > (instead of going to the mesh view), but it was not possible because  
 > the fn key is treated specially by the keyboard microcontroller, and  
 > not forwarded to the OS.  There was no way to tell from software  
 > whether a user had pressed fn+F1 or just F1.

if you watch /dev/input/eventN, where N is the right device for
the keyboard, you'll get a KEY_FN code for the Fn key.  and if
you use it to modify F1, you'll get KEY_FN_F1 instead of KEY_F1. 
i'm checking this on 2.6.31 on XO-1.5.  it's possible that 2.6.25
on XO-1 was different.


 > Accordingly, on new keyboards, OLPC should consider pushing this  
 > special handling into the software keyboard mapping as much as  
 > possible.  It's hard to see why fn+Spacebar needs to be a new keycode,  
 > and not just a series of standard up/down events.  The only tricky  
 > spot I can think of is PageUp/PageDown/Home/End.
 > 2. We have a lot of redundant modifier keys.  fn, altgr, and hand-key  
 > could all be a single key, because they are never used together.  If  
 > the keyboard controller would turn altgr+left into Home (etc.), there  
 > should be no regression of functionality, even under windows.
 > --Ben
 > _______________________________________________
 > Devel mailing list
 > Devel at

 paul fox, pgf at

More information about the Devel mailing list