--- a/content/blog/2012/10/a-modern-space-cadet.html Tue Oct 02 20:02:24 2012 -0400
+++ b/content/blog/2012/10/a-modern-space-cadet.html Tue Oct 02 21:42:39 2012 -0400
@@ -56,14 +56,14 @@
I've tried a number of modern keyboards in the past few years. They're all
high-quality and more expensive than the $20 plastic toys that come with
-desktops these days. But I spend 60 or more hours a week at a keyboard and
-maybe one hour a week in my car, so I'm getting pretty good use out of the
-dollars I've put into keyboards compared to the cost of my car.
+desktops. But I spend 60 or more hours a week at a keyboard and maybe one hour
+a week in my car, so I'm getting pretty good use out of the dollars I've put
+into keyboards if you compare them to the cost of my car!
I'll go through the keyboards I've used in chronological order. I'm not going
-to go into too much detail about the basics of mechanical keyboards and
-switches. If you want to learn about that, [this post][ch] and [this
-guide][mech] are good places to start.
+to write too much about the basics of mechanical keyboards and switches. If you
+want to learn about that, [this post][ch] and [this guide][mech] are good places
+to start.
[ch]: http://www.codinghorror.com/blog/2010/10/the-keyboard-cult.html
[mech]: http://www.overclock.net/t/491752/mechanical-keyboard-guide
@@ -83,13 +83,12 @@
They're readily available at any Apple store, and of course they're wireless
which is great.
-Finally, they also feel exactly like the keyboards on Apple's laptops, so your
-muscle memory is perfectly suited to either one if you switch between them
-often.
+They also feel exactly like the keyboards on Apple's laptops, so your muscle
+memory is perfectly suited to either one if you switch between them often.
Unfortunately typing on them is nowhere near as nice as the rest of the
-keyboards in this list. The Apple keyboard have (I think) only 2mm of travel,
-but you have to bottom-out the keys to register the keypresses.
+keyboards in this list. Apple keyboards have (I think) only 2mm of travel, but
+you have to bottom-out the keys to register the keypresses.
[apple-wireless]: http://www.apple.com/keyboard/
@@ -195,8 +194,7 @@
Anyway, this keyboard has a few disadvantages. First, unlike every other
keyboard here (except the wireless Apple ones) *it is not a USB hub*. This
-isn't a huge deal (I have external USB hubs anyway), but it did come as a big
-surprise.
+isn't a huge deal (I have external USB hubs), but it did come as a big surprise.
Second, it's big. Really big. If you don't have *plenty* of room on your desk
you might want to look at the [tenkeyless][topre-tenkeyless] varieties which
@@ -209,8 +207,8 @@
Now for the good parts. This thing is built like a tank. If you needed to
defend your home from an intruder, it would make an acceptable blunt weapon with
-which to do so, and you'd probably be able to plug it right back in and start
-typing again.
+which to do so (and you'd probably be able to plug it right back in and start
+typing again).
The finish is the same as on the HHKB (gorgeous), but I have to take a point off
for the non-blank keycaps. I don't need to look at the keys while I type, so
@@ -231,10 +229,10 @@
### Verdict
Right now I'm using the Topre Realforce for my day to day work. I've fallen in
-love with how the Topre switches feel (I prefer them over all the others) and
-the Happy Hacking Keyboard is just too cramped. If I were short on space the
-HHKB would be great, but I have plenty of room on my desk, so why not make use
-of it?
+love with how the Topre switches feel (I prefer them over all the others except
+*maybe* the Cherry Blues for the sound) and the Happy Hacking Keyboard is just
+too cramped. If I were short on space the HHKB would be great, but I have
+plenty of room on my desk, so why not make use of it?
Here's a photo of all the keyboards (along with a 13" Macbook Air) so you can
see the differences in size.
@@ -301,13 +299,12 @@
The Capslock key on modern keyboard has become the punchline of many a joke, and
for good reason: there's no reason to dedicate such an important key to
-a function like capslock.
+a function like capslock. Many people rebind it to a more useful key like
+Control, Option, Escape, or Backspace. I rebound it to Control for a while and
+then realized that with KeyRemap4MacBook I could get even more mileage out of
+it.
-Many people rebind it to a more useful key like Control, Option, Escape, or
-Backspace. I rebound it to Control for a while and then realized that with
-KeyRemap4MacBook I could get even more mileage out of it.
-
-The important thing I finally realized is that it's possible to divide keys on
+The important thing I thought of one day is that it's possible to divide keys on
the keyboard into three groups:
* Keys you hold down to change how *other* keys behave, but that (usually) don't
@@ -315,7 +312,7 @@
* Keys that you press and release but don't want to "repeat" as you hold them
(like Escape or Insert).
* Keys that you sometimes press and release, but sometimes want to repeat (like
- holding space to insert a bunch of spaces, or Backspace to kill a bunch of
+ holding Space to insert a bunch of spaces, or Backspace to kill a bunch of
characters).
Can you see where this is heading? The last group is pretty normal, but the
@@ -328,17 +325,17 @@
I'm clearly not the first one to think of this, because KR4MB includes built-in
support for creating these kinds of mappings.
-First you'll want to map Capslock to Control at the OS X level by going into the
+First I've mapped Capslock to Control at the OS X level by going into the
Keyboard preference pane in System Preferences, clicking the Modifier Keys
-button in the lower right, selecting your keyboard in the dropdown list (this is
+button in the lower right, selecting the keyboard in the dropdown list (this is
surprisingly easy to miss), and changing the Capslock setting:
![Changing Capslock to Control in OS X](/media/images{{ parent_url }}/kb-caps.png)
-Then you can open KeyRemap4MacBook and choose the following premade option:
+Then I've selected the following premade option in KeyRemap4MacBook:
- Control_L to Control_L
- (+ when you type Control_L only, send Escape)
+> Control\_L to Control\_L
+> (+ when you type Control\_L only, send Escape)
Now the Capslock key on the keyboard does the following:
@@ -348,8 +345,8 @@
That's two extremely important keys (at least for Vim users) on a single key in
one of the prime locations on the keyboard! No more awkward stretches!
-If you want to force yourself to learn to use it, disable the normal escape key.
-You'll learn fast.
+If you try this and want to force yourself to learn to use it, disable the
+normal escape key. You'll learn fast.
Hyper
-----
@@ -362,14 +359,14 @@
I arbitrarily decided that Command was the OS X equivalent of Super. That left
Hyper.
-Since OS X doesn't natively support a fifth modifier key, I came up with
-an idea to fake it.
+Since OS X doesn't natively support a fifth modifier key I had to come up with
+a way to fake it.
First, I realized that because I use Capslock for Control I had no use for the
-*real* left Control key. So the first step is to remap that to something else
+*real* left Control key. So the first step was to remap that to something else
distinct from the Capslock-version of Control.
-For this you need PCKeyboardHack. I don't think there's a way to do it in
+This required PCKeyboardHack. I don't think there's a way to do it in
KeyRemap4MacBook, because by the time KR4MB sees the keypress it can't tell if
it came from the Capslock key or the real Control key (due to how they were
changed in the previous section). PCKeyboardHack, however, *can*, so I remapped
@@ -378,8 +375,8 @@
![Remapping Left Control in PCKeyboardHack](/media/images{{ parent_url }}/kb-pck.png)
Keycode `80` is the `F19` key. My keyboard doesn't have an `F19` key so it
-doesn't conflict with anything. Now we can simply remap `F19` in KR4MB just
-like any other key.
+doesn't conflict with anything. Now I can simply remap `F19` in KR4MB just like
+any other key.
To create a "pseudo-Hyper" modifier, I remapped this key to be the equivalent of
holding down *all four other modifiers* by adding the following to my
@@ -417,12 +414,11 @@
*always* goes to Firefox no matter what, so I can easily burn that into my
muscle memory.
-There's one more little trick I use in Keyboard Maestro that you might find
-useful. It's specific to how I work, but you might like to do something
-similar.
+There's one more little trick I use in Keyboard Maestro. It's specific to how
+I work, but I'm sure some of you will still find it handy.
-I pretty much always keep two iTerm 2 windows open. The first contains a tmux
-session with one window split into two panes. One pane holds
+I pretty much always keep two iTerm 2 windows open. The first contains
+a [tmux][] session with one window split into two panes. One pane holds
[weechat][weechat-prog] for IRC, the other holds [Mutt][mutt-prog] for email.
I keep this on my laptop screen at all times while I do other things on my
external monitor.
@@ -439,6 +435,7 @@
would select the nth pane in the current window by adding the following to
`~/.tmux.conf`:
+ :::text
bind 1 select-pane -t 1
bind 2 select-pane -t 2
bind 3 select-pane -t 3
@@ -460,9 +457,9 @@
1. Focus iTerm 2.
2. Send a `Command-Option-1` keystroke, which will focus the first iTerm
2 window (I simply make sure I always open my mail/irc window first).
-3. Send `Control-f` keystroke.
-3. Send `1` keystroke, which together with the previous one tells tmux to switch
- to pane 1.
+3. Send the `Control-f` keystroke.
+3. Send the `1` keystroke, which together with the previous one tells tmux to
+ switch to pane 1.
The mail shortcut is similar, of course, and the general-purpose terminal one is
even simpler.
@@ -471,6 +468,7 @@
got some very easy-to-type shortcuts I can burn into my fingers for switching
applications quickly. Awesome.
+[tmux]: http://tmux.sourceforge.net/
[weechat-prog]: http://www.weechat.org/
[mutt-prog]: http://www.mutt.org/
@@ -479,7 +477,7 @@
The Shift keys are another of those keys that are only useful with other keys,
so it's only natural that they were also on the list of keys to optimize.
-First, though I took a detour to correct a bad habit of mine.
+First, however, I took a detour to correct a bad habit of mine.
### Shift Key Training Wheels
@@ -489,10 +487,10 @@
My most egregious offense was that I always used the left Shift key. Even when
typing `X` I'd hold the left Shift key with my left pinky and hit the `x` with
-my left index finger, which pulls my hand off the home row and generally feels
+my left index finger, which pulled my hand off the home row and generally felt
awkward.
-One day I decided I was tired of doing this the wrong way and decided to fix
+One day I decided I was tired of doing this the wrong way and resolved to fix
myself. The easiest way to break a bad habit is to make it harder or impossible
to do, so I created a custom KeyRemap4MacBook setting that *disables* the
keypress when you use the incorrect Shift key with a letter. Here it is in
@@ -539,7 +537,7 @@
of wrong typing. It's amazing how fast muscle memory can adjust when you simply
*force* it to.
-Once I fixed myself I disabled this setting, because it also forces you to use
+Once I fixed myself I disabled this setting, because it also makes you to use
the "correct" Shift key when doing keyboard shortcuts, and sometimes those are
easer to do with the "wrong" Shift.
@@ -616,10 +614,10 @@
The Space Cadet had a separate key for typing Greek letters, and I've decided to
do the same. I don't know *exactly* how that modifier key worked, but here's
-how my version is going to work.
+how my version works:
* Press and release the "Greek" key to go into "Greek mode" for one character.
-* Type the appropriate latin letter to get the Greek character for that key
+* Type the appropriate Latin letter to get the Greek character for that key
(capital letters and lowercase are distinct).
For example, typing `Greek`, then `w` results in ω (omega), while `Greek`, then
@@ -629,15 +627,16 @@
have to press the `Greek` key between every letter. But for my purposes
(variables in math) it's perfect.
-There are two parts to implementing this in KeyRemap4MacBook. First we need to
-pick a `Greek` key. I never use the `Command`, `Option`, and `Control` keys to
-the right of the spacebar, so I chose the right `Option` key for this.
+There are two parts to implementing this in KeyRemap4MacBook. First I needed to
+pick a `Greek` key. I never use the Command, Option, and Control keys to the
+right of Space (another bad habit I should probably fix one day), so I chose the
+right Option key for this.
If you *do* use the modifiers on the right you might prefer to pick a different
key for this, like `Insert` or `Print Screen`.
-Also, since I'm using the Realforce which is a PC Keyboard, that key is actually
-called the "PC Application" key. I'm sure you can figure out how to adjust the
+Also, since I'm using the Realforce which is a PC keyboard, that key is actually
+called the `PC Application` key. I'm sure you can figure out how to adjust the
mapping if necessary.
Here's the first part of the mapping, which binds the `Greek` key:
@@ -660,13 +659,13 @@
mapping inside there too.
I wrote a little [Python script][cadetpy] to generate the rest of the mapping
-for me. Here's the whole Greek layer mapping in its entirety:
+for me. Here's the Greek layer mapping in its entirety:
<https://gist.github.com/3824106>
What are all those `Option` modifiers doing in there? Well there's one more
-step to making this work. You need to switch your keyboard layout in OS X to
-the "Unicode Hex Input" layout under System Preferences → Language and Text
-→ Input Sources:
+step to making this work. In order to use this mapping you need to switch your
+keyboard layout in OS X to the "Unicode Hex Input" layout under System
+Preferences → Language and Text → Input Sources:
![Switching to Unicode Hex Input](/media/images{{ parent_url }}/kb-hex.png)
@@ -729,7 +728,7 @@
"^w"="deleteWordBackward:";
}
-Welcome to the fiddly, maddening world of keybinding customization!
+Welcome to the fiddly rabbit hole of keybinding customization!
The Greek layer in my mapping pretty much matches the original Space Cadet
mapping as far as I can tell. Here's a table of the keys and their Greek