Hacker News new | past | comments | ask | show | jobs | submit login
The Joys of Unix Keyboards (donatstudios.com)
133 points by ecliptik on Dec 30, 2019 | hide | past | favorite | 143 comments



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

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


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


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.


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

The original design is based on typewriters from the 1890s. Within a few decades the design constraints had already changed (hence e.g. the Dvorak layout, which is optimized for 1930s-style typewriters).

Anyhow, after the original typewriter and mid-20th-century teletype machines https://upload.wikimedia.org/wikipedia/commons/d/df/ASR-33_a..., the biggest influences of modern keyboards are designers at IBM and German bureaucrats from about 1980.

A number of features of the German DIN office equipment standards forced significant (frankly arbitrary and unnecessary) changes on anyone who wanted to keep selling computers in Germany.

There was a wide variety in computer keyboard designs up through the 80s, and then somewhere in the mid-to-late 80s the IBM 101-key layout became entrenched, and we’ve been stuck with it ever since, except for marginal niche alternatives.


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. (-:


> 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 ;-)


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.


> I get more and more frustrated

Was it worth the suffering?


The headlined article talks about "the Caps Lock key's usual position". What it is overlooking is that to a fair number of people the position of Caps Lock on an IBM Model M keyboard was, conversely, the Control key's usual position, because that's where it was on the Model F for the XT, and where it was on quite a number of home computer keyboards in the 1970s and 1980s.

Fun fact: Some home computers had both caps lock and shift lock.


Another data point - Ctrl was also in the same place (where caps lock is today) on the Apple ][ keyboards. There was no Caps Lock key at all.


Yup, and remember the IBM PC was originally intended as a "business PC". So they modeled the keyboard on previous bushiness machines (typewriters, 3270 terminals, etc) so that those bushiness users IBM saw as their primary customers would have a familiar keyboard to work on. Definitely a consideration in a time where keyboard skills were considered important enough there was often a high school class devoted to it.


My opinion is, the original PC Model F keyboard is good, except it doesn't have lights.

I do sometimes use caps lock, when writing many words in all uppercase (used sometimes in computer programming; even in other text it may sometimes be used for titles and so on). (I also use num lock, both on and off. And also scroll lock, too, sometimes. I use all of the keys on the computer, sometimes.)


The F is a classic; I did time one one. Not sure how important lights are.

Remember that back then there were lot's of things where caps were meaningful. In early Fortran (and as I recall Algol and COBOL) reserved words were all-caps, so it wasn't weird to hit the caps lock and type for a while.


Can’t remember the last time I saw a keyboard with that, plus num lock and scroll lock. Turning your number pad on the side into a directional pad with scroll keys was quite interesting.

Not to mention the insert key without a state indicator, which these days would confuse the hell out of anyone who hits the key accidentally and didn’t understand why they were typing over everything.

There’s an incredible amount of computer history covering such small details. I love looking back and seeing how things have changed, besides the obvious things like storage media.

In fact, I bought parts for a new rig the other day and it blew my mind when the SSD I bought was a single chip I slotted in. It’s 500gig but the size changes your perception of it. The last time I did this I was hooking 2.5” SSDs through SATA and using a 3.5” HDD secondary with those crazy SCSI cables. Now it just slots in like a RAM chip.

PC building UX has changed a lot.


My nvme ssd purchase also blew me away. I never realized how small they actually were


I use Caps Lock only to turn off Caps Lock if I accidentally pressed it previously


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

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


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.


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.


I have two of them and while I like them, they are not the same build quality. In fact, there is a perceptible difference between an older and new one in terms of the weight including thickness of the plastic casing. Functionally however, I have had no problems and would definitely recommend.


No, it is no longer a combination self-defense weapon and keyboard. The buckling spring action itself is still decent but the build quality is much worse, and the melted plastic rivets that hold the membrane have a bad habit of breaking or flexing and rendering keys unusable over time. You can address the rivet issue by drilling with a pin vise and using screws but be prepared to spend a day doing it since there are something like 50-60 rivets.

There is someone that was doing a reproduction of the Model F (the earlier and more robust XT keyboard prior to the M) but they're quite a bit more pricey.


Here's a review: https://www.youtube.com/watch?v=-A-vRZth7SI . The Unicomps also feature in this overview of the Model Ms: https://www.youtube.com/watch?v=r5H58uudo1Y .


And best of all: if you don't mind a blank keycap, you can get a non-stepped keycap for the Ctrl key.[1]

[1]: https://deskthority.net/viewtopic.php?t=16693


If I wasn't working solely from laptops these days, I'd be all over that. Finally, a proper USB keyboard:

https://www.pckeyboard.com/page/product/UB40B5A

But the real gold is on this page:

https://www.pckeyboard.com/page/category/Buttons

Meta-Super-Hyper FTW!


Me too. I also like its label slapped at the bottom of the keyboard, which reads "Made in U.S.A.". Kind of makes me a proud owner even though I'm not American.


Good to see that there are still really good keyboards being manufactured new. Thanks for the link, I think I will order one :-).


Can't comment on the quality, but audible click like the original -M is a no-no and who needs the number block on the right? Waste of valuable desk real-estate.

  Still looking for a quality *quiet* keyboard like the Cherry I had in the early nineties.


Says who? I very much prefer the audible feedback as long as I'm not in a shared space; many people do. And not everyone on the planet is a programmer; people who deal with lots of numbers (e.g. accountants) need the 10-key pad. In fact, my wife carries a USB 10-key for when she needs to work on a laptop lacking one.

If you're looking for a quiet keyboard, look for one with Cherry Brown keys (if you like tactile feedback) or Cherry Silent Black or Silent Red keys if you want the quietest. There are lots of folks making good quality, choose your key, keyboards.


Holy crap, they make springy Model M style keyboards optimized for Mac. Likely my next keyboard and possibly a gift to others...


If you live in Australia, I could sell you my macOS unicomp model M.


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.


On the other hand, adapting yourself to the junky $10 keyboard that comes with every computer means you've got your perfect keyboard everywhere. I can go work anywhere, and they've got one of my perfect keyboards somewhere in a box in a storage closet because it came with a desktop they bought for something, and nobody wanted it.


Adapting yourself to eating only junk food means you'll never have to cook or pay for a proper meal. Only problem is good food really is better and always will be.


These days you usually carry your computer with you, but if not, you can also easily carry a new 88 or 96 key keyboard as they come with a lithium battery and bluetoof support.


Also, you can also just start with remapping Caps Lock to Ctrl. It's free, not that complicated and is definitely an upgrade for people using a lot of keyboard shortcuts.

Although for $200 I recommend first considering what keys you'd prefer at what location and how you'd change the layout if you could choose freely, a lot of keyboards and kits are fully programmable and come with wildly different designs. For example, multiple thumb keys are pretty much the most comfortable modifier keys you'll ever use.


> an upgrade for people using a lot of keyboard shortcuts.

You are suffering from Stockholm syndrome. The keyboard commands should be thought of as the primary interface and the slow mouse actions are for beginners or when the slow mouse metaphor is more natural (e.g. grab and drag a screen element). Shoehorning keyboard commands into a menu metaphor has been a cancer computer design for over 40 years.


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.


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.


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.


Bloomberg keyboards have no competition, but I understand that enormous energies are expended on their design.

I order HPE workstations for the front desk, because they invest in the thermal fluid dynamics and sound energy diffusion of their cases. The default benefits are tangible.

Keyboard quality is a factor more when it is the standard you encounter. High quality consistent keyboard experiences would be significant in broad effect, at least I'm convinced that would be the case.


I’ll never leave my kinesis keyboard. It has multiplied how useful my thumbs are by placing more useful keys near them than just space (but including space). It’s great for rsi too


I’d only consider upgrading to the new Kinesis due to the mechanical F keys. The previous ones feel really weird.


Kinesis led to thumb strain for me. I ultimately settled on a traditional tenkeyless with mechanical switches.

Different strokes for different folks.


You could also go your entire life wearing underwear that chafe you, just a little. Or you could choose not to.

> I'd prefer to be able to use any keyboard anywhere without much drama.

I have no drama using other keyboards. Just like I have no drama sitting in chairs just because I have a good chair at home.

Hell, I've switched to Dvorak about 10 years ago and have been surprised at how rarely I type on other people's keyboards.


OTOH, UNIX tradition is the reductio ad eruditionem of every recurring expression.

This is not the perfect consonance with recent idolatry of UNIX keyboards that I imagine a number of proponents believe it to be.

Has there been a study of the ergonomic and productivity effects of various keyboard designs?

I type in the region of ten thousand words every day and I have no adverse physical symptoms, after almost three decades of continuing typing. Not continuous. I suppose continuous typing is inadvisable.

I hope you don't take my comment as derogatory, it's merely suspicious of the whole rigmarole that keyboards are involved in, and I have spent many more days in search of the ideal keyboard,myself. I have serious doubts about my chances of overcoming the importance of screen input devices, so far as my own use is concerned. Really, I can't believe it is impossible to produce a superb quality mechanical keyboard, even inside the tolerances of a laptop. Business margins are desperately short sighted in this regard. I will tell anyone unfortunate to be within earshot, how the first manufacturer of such a laptop will take my programmatic heart until I am thoroughly retired.


I think most typing problems could be cured with a good wrist rest and good posture.

The wrist rest should keep your wrists straight and keep them off the cold desk and its sharp edges.

Posture should keep your head balanced over your neck, not holding it forward or backwards. The monitor height should support this, and it should be straight in front of you. Your shoulders should be relaxed and your elbows should be around 90 degrees to help your wrists.

By the way, laptops are not ergonomic. There are no OSHA approved laptops.


My impression is that RSI differs from person to person, which means the solution differs from person to person depending on what is strained. For some, a new keyboard layout fixes the problem. For others, simply changing to a less strenuous editor like Vim helps.


cruising around work and checking people's setups...

The overwhelming majority do nothing. Many folks do everything on their laptop (not possible to be ergonomic) and most desktops lack any sort of ergonomic planning (monitors off center, no wrist rests, etc)

There's a lot of low hanging fruit out there.


Health issues aside, I will pay a fraction of a cent per hour for a keyboard that feels better, and a mouse that feels better.


I've been an hhkb user for close to 5 years. What's not mentioned in the article is the location of the pageup/pagedown hotkeys located to the left of the arrow keys. So much of the keeb is well designed including the choice of topre switches which make typing a joy. I agree with spending money on a few things, comfortable shoes, keyboards and bed sheets.


Is there a science to the biggish-feeling keys on most, if not all, of those mechanical keyboards?

I personally use the latest model Apple Magic Keyboard and the thin size seems nice. No need for a wrist support and the keys feel like hair pin triggers when I type. I personally haven’t experienced anything comparable, yet.


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


>it improved my typing speed by factor 2 or so.

Is it odd that I've never found my typing speed to be a bottleneck worth optimizing? Maybe I haven't thought about it enough. While I overall type slower than I think, the difference is very slight and the result is more time to think about how to phrase things. I often find my hands freezing for .5ish seconds while my brain get stuck deciding on what the next appropriate word is.

When coding, it is even less of an issue and if I ever have anything to optimize on the level of typing it would be the auto complete not being helpful enough.


Very early in my career, I started to get RSI issues (before it was a well known phenomena). I limited my typing speed to 32 WPM and also enforced a rest every 30 seconds (originally by beeping the speaker every 30 seconds until I got used to it). I now type very slowly while programming, but usually I'm thinking continuously. Often I'm not thinking at all about the thing I'm typing -- the typing is waaay far behind. I'm convinced that this strategy both saved my hands/wrists and improved my coding.

Interestingly, I stream some free software coding I do on twitch (usually about 2 hours a day). I should watch myself and see what I do now, because I haven't really paid attention to my typing for at least a couple of decades. Though, my streaming dialog easily takes half of my brain, so maybe it's not what I normally do... ;-)


I type very very fast, and yet I know I can speak faster. Not all typing is careful crafting, and even to the extent to which it is seeing it printed out and then erasing parts and replacing them is a very effective way to test things out and save state. Most of my typing is just conversing, where typing notably slower than I can speak, as opposed to merely a bit slower, would be crippling. (And even if I am in a situation where I am waiting on someone else, well, then I can type fast enough to talk to two or three people at once.)


I rather like the position of \ and / in the ISO layout. \ is on the right of lshift and / is on the left of rshift. It feels nice and consistent.


I’ve been wanting to config emacs to change my special char layout from major modes to major modes. As such, i could make my backslash key easily accessible from latex-mode, but out of the way in python-mode. Get my backquote easily accessible from lisp-mode, but out of the way in other modes.

I feel like if i only have a few special chars to move around between modes, it should be easy to learn.

I’ve already inherited my xkbmap and changed the special char to something that suites me more and its been better on my fingers.


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.


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.


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


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

EDIT: xmodmap link


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


Yeah. That’s cool, but I’m talking about conditional context switching.

ESC if pressed once.

CTRL it pressed with another key.


This is the sort of thing I'd want to modify the keyboard firmware for. QMK has explicit support for this kind of thing, for example: https://docs.qmk.fm/#/feature_advanced_keycodes?id=mod-tap


You can also use ^[ as escape, which on this keyboard is a very small motion away from the home row.


With Shift mapped to Escape, sure.


As another Vim guy, the ctrl key being so much closer makes ctrl-[ a little more appealing.


I was wondering why there was any need to move the \ character but then I looked up where it is in the US layout and it seems bizarre.

The UK layout has an advantage, it's to the left of the Z and is easy to type.

The UK layout has a whole extra key which also makes # easier to type because it does not require a shift.


This is why I'm glad that QMK exists. Because you're using a programmable board (where the keymaps/layers/etc) are stored on the keyboard itself you can move everything about and never worry about where your configuration is. And it runs all all sizes of boards from smaller stuff like [1] Gergo and GergoPlex to giant boards like the [2] Hyper7. Hell you can even get a addon board for a HHKB (Hasu Controller) and mod it in.

Although it's a bit of a rabbit hole. You start by moving around your control keys, maybe add a thumb backspace, a few months later you end up with a programming optimized symbols layer [3] and then maybe even adding in chorded stuff [4]. It's a bit of a trip and ruins 'traditional' keyboards.

[1] https://www.gboards.ca/

[2] http://xahlee.info/kbd/hyper_7_keyboard.html

[3] https://qmk.fm/keyboards/gergo/keymap.png

[4] https://github.com/germ/qmk_firmware/blob/gboards-update/key...


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


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


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.


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


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.


Yeah, I'm constantly surprised at how many places the relatively less well-known Ctrl-T works (like in all the Electron apps I use)…


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.


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


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


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.


Sun Type 6 USB is my favorite keyboard, ever. I was thrilled to find that the keymapping to Mac OS was sane. Disappointed that the special keys on the left hand side did not produce scan codes for the Mac to recognize.

It has a soft yet firm keypress feel, one which I have never felt in any other keyboard before. And most importantly, it has Control in the right place, as a proper Unix keyboard would.


In fact, it all started with the AT keyboard if I remember correctly. The original PC keyboard had it where Caps Lock is these days.


You may be right. I was selling PCs and UNIX machines from a MicroAge and remember IBM trying to get us to also flog their System/34 and Displaywrite systems along side their PCs and looking online the Displaywrite keyboard I found has control in the middle row. IBM was all over the map trying to keep PCs from gutting their minicomputer sales and their approach definitely flip flopped a few times, maybe the keyboard layout did too.


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


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


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

https://www.keychron.com/


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.


That’s unfortunate! I’m in the market for a new iPad to replace the one from 2013 I’m using now, and it would be nice to have a full-featured keyboard to use with it.


the easy (and free) answer on mac is to use karabiner elements to remap keys.

https://pqrs.org/osx/karabiner/

Between karabiner and hammerspoon you can 'program' almost any keyboard.

edit: misread the 'iOS' but will keep this here for mac users


Even easier, if you go into the Keyboard prefs, you can remap the modifiers and caps lock. You can’t do the complicated stuff Karabiner does but if you just want to swap a few modifiers, the OS has you covered.


What does 'decent' mean for you here? Something portable? Or are you more concerned about battery life?


Good mechanical keyswitches and a solid BT implementation that doesn't time out and enter sleep mode too quickly.


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?


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.


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.


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



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

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.


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.


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.


I've always wondered why Australia doesn't use the UK layout. Generally the same as the US one plus you gain two currency symbols that you wouldn't otherwise (without resorting to alt codes or whatever).


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.


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

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

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


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



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/

[2] https://www.harborfreight.com/2-3-4-quarter-inch-articulated...


That's a bit impractical for laptop use ;)

I no longer live in Emacs like I did for the first half of my previous job, but so far (touch wood!) I have avoided RSI by just remapping Caps Lock to Ctrl.


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.


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.


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.


Similar positions for Esc, Control, and the Apple (⌘/Command) key: http://cdn.shopify.com/s/files/1/0769/4313/products/apple_ii...


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


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.


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

https://github.com/sysprv/vimrc/blob/master/joy84.html


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


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


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


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


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.


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.


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.


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.


I do that too, though overall typing speed is a little slower. It seems like it could be easy enough to do some sort of 'double-tap shift to go into caps lock' mode like the iOS default keyboard does.


I've seen quite a few people that, either or of habit or due to it being less error-prone to type for them, use Caps Lock for typing capital letters. Instead of Shift+letter, they'd type Caps, letter, Caps. One keystroke more, but no two keys held at the same time, which is difficult for some people. I'm sure there are superior accessibility options, but those have to be found first, whereas Caps Lock just works the same everywhere.


Isn't that what StickyKeys is for?


Yes, as noted, there are accessibility options for that, but that's possibly not an option, depending on how locked-down the PC is the people are working on (one person I've seen this doing was at the ticket counter in a train station; I'm not even sure whether they still had their DOS-based system back then). People tend to use an option they know over one that may be objectively better that they don't know ;-)


But why should I use a non-default setting when I have a key right there on the keyboard for that very purpose?


IIRC, super fast typists will use it, since it’s a complete key cycle and not a chord. Apparently at those speeds, a key press is easier to properly execute than a chord.


Of course! I press it before starting to type a sentence that needs a lot of lowercase letters (like this one), before toggling it back to normal at the end. (On my keyboard, the key caps are all printed with uppercase letters.)


It's very useful when arguing with people online.


It is the most often pressed key when coding in Oberon.


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.


I've gone down this route several times. I've moved Esc, Ctrl and Win (or whatever you call it, Meta?) to the CapsLock position. But for some reason my left pinky just doesn't like that spot. It's a slightly awkward angle, and I use Esc/Ctrl/Win so much that having any of them in that spot tires out my pinky.

One row up or down is fine. But home row far left is hell. Maybe it's simply because my hand grew into it over several decades. Instead, I use CapsLock to lock my screen.


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.


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


Agreed. For anyone else wanting to try this:

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


as always, Miley Cyrus is right.

I use this mapping in my current setup and find it really useful.


I have “fd” set to return me to normal mode. I picked this up from Spacemacs, and I actually like it a lot. I even set it up in IntelliJ.

Now my capslock is Ctrl. I find that combo to be particularly effective for me.


A default vim mapping is CTRL+[ I use that a lot as it requires the smallest motion of my hands. The fd seems pretty cool as that's even a smaller change. How do you set that in your .vimrc?


I use to use “jk” for this. I stopped because several vim emulators, evil specifically, did not support this.


Evil does support this, I use it every day. (Or rather, evil-escape is a plug-in I use that makes this setup very simple)


Seems like only a small win for such a large key. I type a lot of math and have been happy mapping Caps Lock to ”Change keyboard layout to Greek” (macOS). It gives me quick and effortless access to the full greek alphabet.


Big win if you use emacs.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: