
The Joys of Unix Keyboards - ecliptik
https://donatstudios.com/UNIX-Keyboards
======
donatj
Author here, weird to see this ancient post on HN :)

I now primarily use a WhiteFox True Fox [1] I’ve purchased from Massdrop and
customized at work and a Unicomp Sun Unix SpaceSaver [2] at home.

The aforementioned HHKB Lite 2 however is still the keyboard I bust out when
I’m setting up a new machine or just testing one. It’s handy, light and nearly
indestructible.

[1]: [https://kono.store/products/whitefox-keyboard-kit-
byo](https://kono.store/products/whitefox-keyboard-kit-byo)

[2]:
[https://www.pckeyboard.com/page/product/40PSA](https://www.pckeyboard.com/page/product/40PSA)

~~~
rootbear
I share your love of the Sun keyboard layout. I cut my Unix teeth in part on
Sun systems and really miss those keyboards. I would get one of the modern
copies, but in my job as an admin, I'm always on Someone Else's Computer and
it would just be confusing. Maybe when I retire...

------
i_am_proteus
> I can't imagine why anyone thought Caps Lock should have had this prominent
> of placement.

Caps Lock was originally Shift Lock on typewriters, and was adjacent to the
Shift key because it was literally a mechanical locking device to hold the
Shift key down.

~~~
btschaegg
Although you're absolutely right, I still think there's actual merit in the
way of thinking of the sentence you're quoting.

Very much about keyboards today is derived from strange quirks that were part
of typewriters for very good reasons, but have never been properly reevaluated
once they were converted to electronical keyboards. Of course, the main goal
likely has been to minimize friction for those users that were already used to
typing on a typewriter.

Nonetheless, having switched to an Ergodox EZ about a year ago, I get more and
more frustrated by standard keyboards and I'm wondering why ortholinear
keyboards are not the default by now. Similarly, I find it very strange that a
digital interface like USB HID doesn't allow the keyboard to specify unicode
codepoints instead of key codes that then still have to be interpreted by the
OS.

That is, of course I understand _how_ we ended up where we are, but I'm
constantly amazed by how conservative IT can be in some respects while
changing on a dime in others.

~~~
JdeBP
There's a deep and complex answer to your point about Unicode code points,
which is an interesting question to consider in light of the 1980s shift away
from a terminal I/O paradigm.

The shallow response is the simple question: _What are the Unicode code points
for End, Calculator, F7, and Paste?_ These all have USB HID usages. (-:

~~~
btschaegg
> What are the Unicode code points for End, Calculator, F7, and Paste?

True; OTOH, there already are control characters such as `BS`, `DEL`, `BEL`
and so on that also don't make all too much sense if you look at unicode just
as a collection of glyphs. So, I personally would still maintain that
allocating a couple of blocks for stuff like this wouldn't hurt that much.

Also, no one said that the HID specs could not describe a superset of unicode
(e.g. transmit letters with a unicode prefix and control signals normally (or
something similar)). It's just that the way things are now is about the worst
case in a lot of ways.

But: As things work _good enough_ , they likely won't change for a long time,
so going on about it certainly is futile, too ;-)

~~~
JdeBP
Transmitting Unicode code points would, however, be a giant step backwards to
the way that things used to be done, where our terminals had hardwired
keyboard maps, that we had (if we were lucky enough to be even given the
option by the manufacturer) to select on the terminals themselves, via setup
menus or otherwise.

Whereas nowadays, everything is software-mappable. The actual hardware
interface is agnostic as to the semantics of any particular key or chord. It
effectively speaks entirely in terms of ISO 9995-1 key positions and a big
bitmap. What any given key _does_ is entirely software-programmable. (Apart
from [Fn].) Even the nuttiness of the PC/AT backwards compatibility fake
modifier keys is largely behind us.

We have regular keyboards with sometimes as many as 122 or 127 keys. The
infamous "Space Cadet" keyboard had only 100 keys. Even the old 101-key U.S.
PC/AT keyboard had more than that. We have _gaming_ keyboards with even more
keys, still, making use of the extensibility built into the protocol to have
vendor-defined keys. (And there is even less of a relationship between those
keys and Unicode than there are for the End, Calculator, F7, and Paste keys.)

Our applications know this, moreover. They don't only get told about
characters. They know about key press and key release events, modifiers, and
all sorts of special chords from [Alt]+[F4] to [Control]+[W].

We simply aren't using the old I-send-you-precomposed-characters terminal I/O
paradigms in our input devices any more. Nor is that reflected in our WIMP
user interfaces.

------
ch_123
Unicomp (the company that took over IBM/Lexmark's buckling spring tooling)
makes a Sun layout keyboard which is also worth mentioning for those who like
a larger keyboard:
[https://www.pckeyboard.com/page/product/40PSA](https://www.pckeyboard.com/page/product/40PSA)

(Not affiliated with Unicomp, I'm just a fan of the Sun keyboard layout)

~~~
MisterTea
Is it the same 1980's quality, as in you can defend yourself with one if
necessary? I have a 1986 M that's still going strong with USB adapter.

~~~
donatj
I would say there is a _reasonable_ dip in quality. It's lighter than my old
Model M's and the plastic is not as nice, but all in all its still a very high
quality keyboard compared against others today.

My biggest knock against it is that my keycaps are... strangely printed. The
letters are not perfectly aligned with each other vertically, so that have
kind of a jagged look. That could just be a problem with mine however, it's
been a couple years since I bought it. Other than that however I love it.

------
knorker
I don't understand the commenter saying they don't want to spend $200 on a
keyboard.

That's a $200 investment on something you'll likely spend more time with than
your bed, your car, and your sofa. Over 10 years that's maybe 0.9 cents per
hour of use.

It's worth having _your_ perfect keyboard. I have a custom print 88 key
wasdkeyboards.com one.

Yes, your work should buy you your perfect keyboard, but if they don't then
don't suffer, buy it yourself.

~~~
barbs
Are common keyboards really that bad? I don't really think there's enough
benefit in investing the time and effort and money in working out and
purchasing your absolute perfect layout if it only deviates from the standard
by a small amount. Even the keyboard in the article only deviates from the
standard by a few keys.

It's all subjective of course, but personally I'd prefer to be able to use any
keyboard anywhere without much drama. I don't feel like I'm suffering much,
even if it's not my "perfect" layout.

That said, I do have caps lock remapped to escape on all my personal devices.
The muscle memory isn't so bad that I don't remember to hit the ESC key on
keyboards that aren't mine though.

~~~
radeklew
The way I see it, common keyboards are underpriced due to extreme competition,
and top-shelf keyboards are overpriced because they're a niche market. So
common keyboards aren't _that bad_ , even if they're very cheap, but I think
it's definitely worth it to spend ~$100 on a keyboard, which I think is a lot
more palpable to people whose job involves typing.

I'm going to make up some arbitrary numbers, hopefully they'll make it more
clear. I use a Planck, which cost about $110. Looking at Amazon, I found an
alright-looking Logitech for ~$15.

Is typing on the Planck 7x better? Probably not. Is it 2x more enjoyable? I'd
say so! Unfortunately, there are no $30 keyboards that are as good, but I'm
fine with paying the big premium because the cheap version is already so
cheap.

~~~
LudwigNagasena
It doesn’t matter per se that it isn’t 7x better. What matters is that there
is nothing else that would improve your experience more for extra $95 you
spent on your keyboard.

------
terofle
> 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.

This guy has clearly never used LaTeX.

I mapped my \ to a more accessible location and it improved my typing speed by
factor 2 or so.

~~~
consp
Also as a vim user I would like the esc instead of the control here but that
is non Unix standard as far as I know. I also use Windows quite a lot so
having the \ somewhere close is nice to have.

Though I really dislike the meta key next to the space-bar but that is just me
not being old enough to have used non IBM compatible keyboards.

As you might have noticed, everybody's preference is different.

~~~
dijit
There are many ways to rebind caps lock to be escape on press and control when
used in combination with another key. Karbiner elements on macos and xcape on
Linux come to mind immediately. But some keyboard firmwares are programmable
enough to do it themselves too.

However. What I found best as a vim user was to use ^[ as escape. It has the
added bonus of actually being faster to process by vim too.

~~~
majewsky
You don't need any extra software to map Caps to Esc on X11: Just enable the
caps:escape option.

In context: [https://github.com/majewsky/system-
configuration/blob/6c4478...](https://github.com/majewsky/system-
configuration/blob/6c4478bfdbb61f6bdb4c523286b6e85b291807d5/hologram-base-gui-
minimal.pkg.toml#L48)

~~~
silasdb
You can also use xmodmap [1].

My xmodmap file has things like:

    
    
      ! Make Caps Lock be Escape and Scroll Lock be Caps Lock
      remove Lock = Caps_Lock
      keysym Caps_Lock = Escape
      remove Lock = Scroll_Lock
      keysym Scroll_Lock = Caps_Lock
      add Lock = Caps_Lock
    

After reading this post, I also reverted backspace and bar/backslash:

    
    
      keysym BackSpace = backslash bar
      keysym backslash = BackSpace
    

[1]
[https://wiki.archlinux.org/index.php/Xmodmap](https://wiki.archlinux.org/index.php/Xmodmap)

EDIT: xmodmap link

~~~
majewsky
XKB options have the advantage of also being understood by Wayland
compositors.

------
dogweather
> I can't imagine why anyone thought Caps Lock should have had this prominent
> of placement.

Typewriters need the caps lock there because it's literally a locking
mechanism, keeping the shift button pressed down.

~~~
m463
I'm glad "they" don't take it out - I remap it to control and "they" would
probably use it for something silly.

------
boomskats
Somewhat related - I _love_ the fact that MacOS still maps Ctrl-H to
backspace.

I recently started instinctively using it as a backspace when typing (finally,
thanks to a combination of laziness and vim). I'm finding it extremely
comfortable (alongside xcape). Highly recommend trying it, especially if
you're a Mac user.

~~~
knorker
MacOS and every other Unix.Ctrl-N,Ctrl-P, Ctrl-I... these don't just work in
emacs.

~~~
boomskats
What I like about MacOS is that it's got this covered in literally all
contexts - GUI, terminal, Slack, logon, everything.

I wish there was a way of getting X11 to also do it consistently.

------
tyingq
There are several Sun to USB adapters if you really want to use an old Sun
keyboard on a PC or Mac.

There even used to be inline devices that filtered the L1-A /STOP signal.
Because if you hit that key on a Sun server console, it paused the whole
server.

~~~
technofiend
You can get a Sun type 6 keyboard with native USB, no adapter required. [1] I
went through a few over the years before giving up on "new old stock" because
they had a tendency to fail.

As I recall we have IBM to thank for the Ctrl/capslock swap. The IBM PC
keyboard featured that change and was a carry over from the selectric
typewriter and possibly other IBM terminal keyboards. It was very annoying for
those of us with muscle memory with Ctrl where it was supposed to be.
Particularly for programs like Wordstar that had heavily used keys clustered
within easy reach of the pinky finger resting on control in the "right" place.

In fact there appear to be programs and macros that still allow Wordstar mode
in emacs (deprecated), vim and word. So I guess it's still popular. Supposedly
George RR Martin still writes in Wordstar, preferring it to modern word
processors.

In fact in a similar vein of using what you know I'm a little surprised there
hasn't been a Kickstarter to reproduce the space cadet keyboard or similar
just for the emacs fans out there.

[1]
[https://www.ebay.com/sch/i.html?_nkw=type+6+usb+sun&_trksid=...](https://www.ebay.com/sch/i.html?_nkw=type+6+usb+sun&_trksid=m5467.l1311&_odkw=type+6+usb)

~~~
randomstring
If you love Sun keyboards AND want a compact keyboard, try and find a Sun
Voyager keyboard. It's a Sun keyboard, but without the (pointless) numeric
keypad on the right. When I worked at Sun I managed to source a couple and
still have one in my "I might need that again" bin of parts.

I didn't find any on ebay, but I did find a whole Sun Voyager system
[https://www.ebay.com/itm/WORKING-Rare-SUN-Voyager-
SPARCstati...](https://www.ebay.com/itm/WORKING-Rare-SUN-Voyager-SPARCstation-
Model-146/131537725894) $700 just to get a keyboard is kinda pricy.

Like the author of the article, I like the Happy Hacker keyboard. It's
compact, well built, the control key is in the correct place, has well placed
arrow keys, and isn't overly expensive. I have (I hope) a lifetime supply of
them. So long as I can get ps2 adaptors for whatever comes after USB.

~~~
technofiend
Thanks for the heads up! I'll keep an eye out to see if any come up cheap. As
I mentioned I did try to keep using Type 6s but they would usually fail after
a year of use or so. I punted and bought a buckling spring keyboard although
it's been sitting in a closet because I didn't want to be _that guy_ and be
the only one with a clacky clacky keyboard. Now that several of my employees
brought in mechanical keyboards of their own volition I feel like I have
license to do the same.

The type 6s are soft without feeling like you're typing on a marshmallow.
Would love another if I could actually keep one alive.

------
gerikson
I always remap Caps Lock to Control on every system I use.

~~~
fmajid
Same here. Unfortunately iOS does not have that functionality, so I am still
looking for a decent BT keyboard with programmable keyboard.

~~~
johnnycab
This might present itself as a suitable contender, compatible with Windows,
macOS, iOS and Android:

[https://www.keychron.com/](https://www.keychron.com/)

~~~
fmajid
Yes, I have a K1 and a K2. I'd prefer a 65% layout, however, and the upcoming
K6 sounds more like what I need.

------
decebalus1
Keyboard bike-shedding is of a very special flavor. Seriously, I've been
programming/typing for decades and I went through numerous layouts due to the
specific hardware preferences of my employer, while keeping my personal
hardware Apple. I just switched and adapted reasonably fast to do my job. I
type very fast. I mean fast enough that an increase in speed will have a
negligible increase in my productivity.

I never had nowhere near the amount of annoyance or desire to over-optimize a
particular layout for a particular type of job. The only thing which comes
close is the disappearance of the escape key on macbooks, but with the haptic
feedback daemon I went over that one.

Do most people find value in this? I get that we're craftspeople and the
keyboard is one of the most important tools yadda yadda input bla bla rubber
meet the road. But do we actually get that much value to warrant so much
interest?

~~~
celeritascelery
I think it is 90% hobby, 10% value. It takes a very long time of using a new
layout to get any benefit. If you don’t have any interest in keyboards and
layouts, then don’t bother. I personally love trying new layouts and
keyboards. Though I wouldn’t say they have actually made me any faster.

------
skocznymroczny
The "Lite" version of the keyboard doesn't have the Topre switches, so it
throws the main reason to get the HHKB in the first place out of the window.

~~~
1hackaday
But it does have the arrows, which are useful for many applications. It would
be ideal if there was a "pro" HHKB with arrows.

~~~
aricz
HHKB with arrows:
[https://www.pfu.fujitsu.com/hhkeyboard/lineup/pdkb420w.html](https://www.pfu.fujitsu.com/hhkeyboard/lineup/pdkb420w.html)

------
deim
For those of you, looking for a keyboard with backspace right above the Enter
key, look no further than on basically any European keyboard. We have tall
Enter instead of wide one on american keyboards, so backspace it directly
above it. It basically looks like that:
[https://i.imgur.com/OtPxJSF.png](https://i.imgur.com/OtPxJSF.png)

You can find any number of different keyboards from different manufactures. I
once had american keyboard with wide enter, and I don't want to return to it.

~~~
b5
While you're strictly and literally correct, I think you're missing the point.
The vertical position of the Backspace/Delete key is still the same on US-ANSI
and EU-ISO.

The advantage of the Unix layout is that it brings the Backspace/Delete key
down a row, to be opposite the Tab key. That puts it within the main bank of
keys, and within easier reach -- a definite benefit for such a frequently used
key.

~~~
jandrese
More to the point, I've usually found those double tall Enter keys to be a
detriment because if you hit it on the bottom half like a regular Enter key
sometimes it binds up and doesn't register.

It's a waste of space IMHO and I tend to shun any keyboard that uses it.
Especially when it shoves the |\ key to some really inaccessible location,
like to the right of the right shift key or obnoxiously puts it where the
backspace key should be and makes backspace even harder to reach.

------
grymoire1
As I recall, the Sun keyboards (and OS) had many other features and advantages
that I miss.

While many keyboard of the time was limited to two "Meta-" keys (Control- and
Shift-) the Sun keyboard had 5 meta-keys, so you can type A, Shift-A,
Control-A, Alt-A, LeftMeta-A, RightMeta-A, or any combination, like Shift-Alt-
RightMeta-A, etc.

I think one of the possible uses was to have a Delete key to delete a
character, Alt-Delete to delete the last word, Control-Delete to delete to the
beginning of the line, and if you added a Shift key- the delete works in the
opposite direction - if you wanted this type of key binding.

Another of the ideas I thought great was having dedicated keys for Cut, Copy
and Paste. You didn't have to remember Control-whatever - the name's right
there. A second advantage - having a dedicated key didn't ever conflict with a
program that already had bindings for Control-whatever.

Third, you could add Meta-keys to these, so that you can have variations in
cut, copy and paste.

One action I used frequently was a quick insert - I saw characters in another
screen that I wanted to paste into the current window. I pressed the copy key
down - and held it down, and then moved the mouse to the second window and
double or triple clicked to select a word or line. Then I released the copy
key and the words were pasted into the the first window.

Also - you could move the cursor around - using the keyboard - while holding
down the copy key down.

Crazy stuff, but flexible.

~~~
m463
On linux all that is still around.

I think meta_l and meta_r are treated the same, but you can do all kinds of
craziness with keymaps:

[https://wiki.archlinux.org/index.php/Linux_console/Keyboard_...](https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration)

I wonder if there's a way for apps to look for meta_l in particular

Also one level up, you can set up key bindings for the command line:

[https://wiki.archlinux.org/index.php/Readline](https://wiki.archlinux.org/index.php/Readline)

It helps to learn the basic emacs keys, as they work most places in macos and
linux.

examples would be: ctrl-a beginning of line, ctrl-e: end of line, ctrl-p:
previous line, etc...

------
azaras
Control in Caps Lock is only a small improvement for emacs users. The best
option is to put a little pad in the control keys and use your palms to hit
it:

[https://www.reddit.com/r/emacs/comments/7zvw2b/my_weapon_aga...](https://www.reddit.com/r/emacs/comments/7zvw2b/my_weapon_against_emacs_pinky/)

~~~
slezyr
Or use USB pedals

[https://images-na.ssl-images-
amazon.com/images/I/61Uvir1H0AL...](https://images-na.ssl-images-
amazon.com/images/I/61Uvir1H0AL._AC_SL1100_.jpg)

~~~
paddy_m
I'm glad they are all screwed together. Years ago I broke my wrist and
couldn't rotate my left wrist in all of the proper ways. I tried some key
pedals, which were helpful but very finicky, there wasn't good tactile
feedback and I had to screw them to a piece of plywood.

What did work very well was taking a Kinesis Freestyle [1] (two completely
separate keyboard halves attached with a cable) and mounting the left side to
a hobbyist vise [2]. I removed the vise (clamping part) and kept the base.
Then I made an adapter plate (plywood) that allowed me to mount the left half
on the base. Then I could position that half at any angle and rotation I
wanted. This probably got me typing again four weeks earlier.

[1] [https://kinesis-ergo.com/shop/freestyle2-for-pc-us/](https://kinesis-
ergo.com/shop/freestyle2-for-pc-us/)

[2] [https://www.harborfreight.com/2-3-4-quarter-inch-
articulated...](https://www.harborfreight.com/2-3-4-quarter-inch-articulated-
vacuum-vise-3311.html)

------
blhack
Honestly the microsoft sculpt is pretty darn close to a perfect keyboard in my
opinion.

I just (as in a few hours ago) got a keyboard.io, though, and it seems pretty
darn cool! Hopefully even better than my sculpt.

------
SomeHacker44
The old NeXT keyboards had a key under the space bar. It was, I believe, a
Command key when used on the Mac, but I have not used one in ages... Seems
that I use just one thumb out of two when typing (now my left after thumb
tendonitis a decade ago) and only for space, so a good newly designed keyboard
would give thumbs more to do. I believe several models of ergonomic keyboards
do exactly this.

------
the_gastropod
It really is amazing how many no-longer-relevant problems our standard
keyboards solve. Staggered keys, the qwerty layout, and the caps lock
location, for example, are all absolutely worse for contemporary computer-use.
But the momentum of these things is difficult to overcome. It's wild seeing
touch screen keyboards mimic these same typewriter-centric design decisions.

------
mmphosis
Similar positions for Esc, Control, and the Apple (⌘/Command) key:
[http://cdn.shopify.com/s/files/1/0769/4313/products/apple_ii...](http://cdn.shopify.com/s/files/1/0769/4313/products/apple_ii_8e43f9b0-53a0-406d-ab6d-fab25e3a451f_grande.JPG)

------
_kst_
I always remap caps-lock to act like the control key.

I posted an article on how to do this on various systems (some of the
information might be outdated):

[https://the-flat-trantor-society.blogspot.com/2013/12/where-...](https://the-
flat-trantor-society.blogspot.com/2013/12/where-should-control-key-be.html)

------
jlv2
For my first 15 years of using UNIX on PC keyboards, I had to use xmodmap to
remap the ~` key back to the correction location the right side of the
keyboard... and move ESC to the key labeled ~`. Similarly with swapping
Control/CapsLock. I finally gave it up nearly 15 years ago in an attempt to
simplify my setup on new systems.

------
DonHopkins
"I wish we hadn't used all the keys on the keyboard." -Bill Joy

[https://github.com/sysprv/vimrc/blob/master/joy84.html](https://github.com/sysprv/vimrc/blob/master/joy84.html)

------
drewg123
Any pointers to a unix-layout ergonomic keyboard? Bonus points for mechanical
switches..

~~~
cameronc56
There are not many mechanical ergo keyboards that are pre-assembled. Most
boards that you assemble yourself use QMK keyboard firmware, which you can map
however you like.

This one is probably my favorite:
[https://github.com/foostan/crkbd](https://github.com/foostan/crkbd)

------
euske
In Japan, the Unix-style keyboard layout has been pretty popular among IT
people, as people don't need Caps Lock as much. Personally though, I can't
stand for the HHK key touch (too soft for me).

------
rb808
Does anyone ever use Caps Lock? It seems like such a waste of space.

~~~
klez
I do. If I need to type a full word, all uppercase (e.g. the name of a
constant) or simply more than one uppercase letter I'll use caps lock, because
it allows me to keep touch typing without having to change the hand that keeps
shift pressed. I never understood why people seem to be against caps lock, to
be fair.

~~~
RandallBrown
I've never had a problem touch typing while my pinky is holding down the shift
key. I type kinda weird though. I don't use the right shift key at all. Only
the left one.

~~~
klez
Ok, but then you have to type an A with your left ring finger instead of using
your pinky. Doesn't it slow you down? I'm asking because I never got in that
habit and religiously kept using the finger "assigned" to each key.

~~~
celeritascelery
I do the same thing (only use left shift). I have gotten really good at typing
with using the ring finger for the far left row. Doesn’t seem to be any
slower.

------
mdszy
Every keyboard I've ever used I've remapped the caps lock to control, whether
in hardware (like on my pok3r) or in software (on my work computer). I have a
hard time ever using a keyboard without this remapping done.

~~~
davefp
Capslock is an Escape key for me because I use Vim a lot. I've heard lots of
tmux users map it to Control and then configure tmux to use Ctrl+a as the
activation mapping, which sounds very useful too.

~~~
mileycyrusXOXO
I set my keyboard to tap Capslock for ESC or hold for CTRL. Seems like the
best of both worlds.

~~~
boomskats
Agreed. For anyone else wanting to try this:

linux: github.com/alols/xcape windows: github.com/ililim/dual-key-remap mac:
karabiner

