Space Cat, Prince Among Thieves

The Joys of UNIX Keyboards

I fell in love with a dead keyboard layout.

A decade or so ago while helping a friends father clean out an old building, we came across an ancient Sun Microsystems server. We found it curious. Everything about it was different from what we were used to. The command line was black text on a white background, the connectors strange and foreign, and the keyboard layout was bizarre.

We never did much with it; turning it on made all the lights in his home dim, and our joint knowledge of UNIX was nonexistent. It sat in his bedroom for years supporting his television at the foot of his bed.

I never forgot that keyboard though. The thought that there was this alternative layout out there seemed intriguing to me.

I am ruined for all other keyboards…

Mac is the main platform at my new job. I found myself unhappy with Apple keyboards; they are flat, bland, and completely unsatisfying to type on. I dug out an old AppleDesign keyboard, and used that for several months but I still needed something more.

I read about Happy Hacking Keyboard, and after some deliberation decided to give it a try. I thought I could learn to accept most of the layout changes, but the lack of arrow keys on the "Professional" model made me squirm a little. Luckily there is a "Lite" version that includes arrow keys.

I purchased the Happy Hacking Keyboard Lite2.

The Happy Hacking Keyboard much like the Sun Microsystem keyboard I found years earlier features a UNIX layout. They designed it with typing at a terminal in mind.

A Better Layout

For those unfamiliar with UNIX keyboards, there are a few distinctions.

Happy Hacking Keyboard
  • The Control key moved to the Caps Lock keys usual position. This makes it much easier to hit common commands than its usual location, often without ever leaving home row. I can't imagine why anyone thought Caps Lock should have had this prominent of placement.

  • The Meta (◆ / ⌘ / Windows) key is in its rightful place next to the space bar, as on a Mac keyboard.

  • The Backspace key moved down a row to be above the Enter key. This change is my favorite change. Having a small reach, normally my hands have to leave home row to hit backspace. but on a UNIX board I have no issue hitting it with my pinky with the rest of my fingers remaining firmly on home row.

  • Escape is also in reach of home row, placed where you would usually find ~. I could have done without this change, but it is fine.

  • The ~ and \ have moved to the usual location of the Backspace. Working exclusively on UNIX systems now, I don't mind the \ being harder to reach. I could understand a Windows user finding this irritating.

The HHKB is a minimal version of the UNIX keyboard. To this end the F Keys are mapped to Fn + 1, 2, 3, etc. The HHKB encourages you to stay on home row; you can hit any key on the keyboard without leaving it. I find my typing accuracy and speed to have improved thanks to its use.

The HHKB features one more change I don't care for. The Backspace key by default performs Forward Delete. Luckily changing this is easy by flipping a toggle switch on the back of the board.


I recommend this keyboard to anyone who spends a lot of time at the terminal. You are able to do more of what you need without ever leaving home row, every important key is within reach.

Discussion on Hacker News

Comment by: Pawel on

Pawel's Gravatar The link to the keyboard is broken.

Comment by: Jesse G. Donat on

Jesse G. Donat's Gravatar Thank you, I have corrected it.

Comment by: Spaz on

Spaz's Gravatar Sometimes you wonder, is this world screwed up? Then you look at the keyboard and then you realize, Screwed -> not sure; Messed up -> definitely.
Cannot agree more with you.
I achieve these changes with key remapping which has an added benefit of keeping undesired guests at bay :-P
I use the SharpKeys application (technically a registry editor) on Windows and the setxkbmap command on Linux to achieve these.

Comment by: Greywolf on

Greywolf's Gravatar I was investigating this keyboard, and for some reason, I'm just not sold on investing $200+ in a keyboard. There's no differentiation listed between the 'Lite' version and the 'Professional' version, which left me feeling a little uneasy.

Having grown up on UNIX, I definitely miss the placements of the keys as shown on the HHKB. I've remapped a few on my NiftyGlowyKeyboard, but the more I have the NGKB, the more I realise how things just are not always where I need them, and how much I miss the old spherical-indent engraved linear mech-switch keyboards, although I've managed to cope by replacing the keycaps to match (most of) my expectations (I still can't move Backspace to just above Enter due to physical layout :( ).

Comment by: Dan Strychalski on

Dan Strychalski's Gravatar Ctrl was universally in the typing zone (the alphabetic section), and almost universally in the home row, from 1963 (when it first appeared) to 1986.

The one exception in general-purpose ASCII-based computers was the Mac. The first Macs had no Ctrl key. (That's why I won't buy anything made by Apple.)

Reading mid-1980s x86 word-processor reviews, you will notice that reviewers consistently selected and praised programs that made "full use of the PC keyboard" -- that is, depended entirely on IBM's function, editing, paging, and cursor keys, and used Ctrl-A through Ctrl-Z little or not at all. Note also the big ads from IBM in those magazines.

Then IBM's then-friends in the Pacific Northwest released their GUI. Neither the environment nor any of the bundled application programs made any use whatsoever of Ctrl-A through Ctrl-Z. This would continue until 1992. (I won't touch anything from that company, either.)

Those reviewers also gave their highest praise to word processors with a "clean screen." Bad keyboard command sets, execrable user interfaces.... "The better to sell you a GUI with, my dear," eh? That GUI certainly needed all the help it could get.

Meanwhile, the word processor that sold the best until 1986 -- and continued to be the most widely used for several years after that -- provided context-sensitive, as-you-work on-screen help and used Ctrl-A through Ctrl-Z in logical, easy-to-learn ways that made all the keys outside the character block unnecessary.

IBM is not the kind of company to take that sitting down.

After testing the waters with the RT PC, IBM released a new version of the PC/AT with a choice of keyboards -- the 101-key Model M with Ctrl displaced, or the 1984 84-key PC/AT keyboard with Ctrl in the home row -- for the same price. To further entice people to choose the Model M, they included a keyboard template kit with that keyboard only. That's how sure they were that people would get no help from their screens.

Looking for excuses for IBM, people say the switch was made because typists expected Caps Lock to be next to the A key. Long before he ever came near a computer, this typist (I was a translator from 1978 to 1985) felt that it was dumb, d-u-m-b, DUMB to put Caps Lock there on electric typewriters.

Putting it there on computers is worse than dumb. It's criminal. And I mean that literally.

Comment by: Jos Boersema on

Jos Boersema's Gravatar Good to read the comment above by Dan Strychalski. I have used the HHKB (Lite ps2) for maybe up to 18 years every day, always been good even with the keys re-arranged to show a Dvorak layout, and of course the Control in its proper position left of a. This leaves us with the great enigma: why is technology degenerating ? Why did good programs get superceded by [the unmentionable] ? I suspect it has to do with a shift in type of user.

In early computing it was specialized and highly skilled people, who have no issue remembering that Control-X does something else than Shift-X. Then the typists and the general public started to come into using computers. Not only are many of them less educated generally, they also just use a computer so much less per day. A Unix programmer in 1970 was probably at it all day. A 'soccer mom' in 1995 might use it for 45 minutes every other day, to type a half paragraph e-mail and look up a recipe for boiling pears. These shifts translates into it being harder to remember what keys mean if they are not clearly labeled and unique for their purpose. The user itself "degraded" so to say. Then the tool followed its user, with the end result being ... [deleted].

Furthermore comes the issue that most people cannot type, especially in the time that home computers where rare. Most people used a pen (some used smoke signals in morse code (cw)). They use two fingers, and read what the keys says on its legend. Control-X is harder for them than typing Delete (two fingers rather than one), whereas for people who can type it is the other way around if you need to move your hand or reach weirder/more keys. I wonder if things like this play into the shift ? It seems that it explains it.

Comment by: Patrick on

Patrick's Gravatar "I can't imagine why anyone thought Caps Lock should have had this prominent of placement."

Look at mechanical typewriters. Pushing the shift key either lowered the entire typebar basket or raised the paper carriage. As a result, either the upper or the lower portion of the typebar would hit the paper (producing an uper or lower case character respectively). Releasing the shift key again made the assembly return to its default position. The caps lock key literally locked the shift key in its current position. So, on a mechanical keyboard it made a lot of sense to have those two next to each other. Nowadays it's just an anachronism, much like the QUERTY layout which was actualyl designed to slow you down, since typing too fast resulted in jammign the typebars.

Comment by: James on

James's Gravatar The HHKB is my favourite keyboard layout. Don't be put off by the pro's version lack of arrow keys. The fn key is placed such that your pinky naturally rests on it while you use the [;'/ keys are arrows.

My problem though is comparing it to other topre keyboards, it feels cheap and plasticy. The RealForce boards have a steel backplate which makes them feel more satisfying to type on.

I really wish more companies made metal cherry MX boards in this layout.

Comment by: THOMAS J MUNN on

THOMAS J MUNN's Gravatar I like thr filco majistouch fc660c. Its torpre and has reversible ctrl csos lock. hhkk was just too wierd for me.

Comment by: raimund on

raimund's Gravatar Personally, I just remap the keys to my taste, so I can use whatever keyboard model I like. Originally with xmodmap, but then I found caps2esc and interception tools
and just modified caps2esc a little to also perform my prefered mappings.

What the caps2esc author meant it for was to turn capslock into a dual purpose key, like control when you press and esc when you press and release. I finally ended up using capslock as esc with press/release and compose key when only pressed, so I could type foreign language letters (úóøïœ and so on) more easily on a euro layout.

Works quite nicely for me. If you know a little C you can make caps2esc do anything you want, not only under X but also on a virtual terminal console.

Comment by: kooek on

kooek's Gravatar Many people need more than only keys and indicator (caps lock) look this

2 rotor/potenciometer for increase volume or manipulate 3d object in program for 3d like blender.

This keyboard are multi language and some char for technical (phi, degrees etc.)

Comment by: Verisimilitude on

Verisimilitude's Gravatar It's mistaken to associate a keyboard layout with UNIX, no different than associating terminal devices with UNIX. This is merely giving the horrid UNIX credit for yet more things it has no relation to.

Comment by: pl on

pl's Gravatar Meta is not Windows/Command key - Meta is Alt (on PC) and Option (on Mac).

The classic ordering was, from spacebar, meta-super-hyper, or ctrl-meta-super-hyper (all of those keys supported under X11)

Email address will never be publicly visible.

See my Tweet about comment formatting.