Advice for emacs with Dvorak keyboard layout


There are lots of good discussions of emacs or of the Dvorak layout. There is even some discussion that touches on the combination, but I think it's worth pulling this into one thread so those of us using Dvorak and emacs don't have to read through dozens of pages.

I'm looking for specific pointers or general advice on using emacs with Dvorak. Emacs is extremely configurable, so I think there have to be some great tricks. What are others doing? Re-binding keys in emacs? Re-binding keys everywhere? Changing shortcuts in emacs?

Consider that many of us on Dvorak came from qwerty and some of us may go back in the future. In my case, I still have some familiarity with emacs on qwerty and I sometimes use qwerty, but not currently for emacs – muscle memory has outlasted explicit memory and my fingers sometimes go to the qwerty keys when thinking of emacs shortcuts. (Thank goodness for undo!)

My favorite thing about emacs was the many keyboard shortcuts (such as Ctl -f, -b, -p, -n, -d, etc.) and I have fully learned to touch-type Dvorak at ~ my old speed, but my brain seems to rebel at emacs shortcuts on dvorak. I learned emacs when I coded regularly ~10 years ago, but I stopped coding regularly ~5 years ago, and then I switched to Dvorak. There's good discussion of switching to Dvorak at is-the-switch-to-dvorak-worth-it, but my reason was that I wanted to a) slow myself down for a while because I was suffering from repetitive strain, and b) because I saw mixed reviews of the ergonomics of Dvorak and I wanted to give it a try. For me, it has worked really well – I recovered while slow and after getting back up to approximate full speed (~80 wpm) I can type more, longer without pain – but now that I want to code again I want to make reclaim emacs and I'm not giving up Dvorak.

Best Solution

Just found this question while searching for similar information. I'm a new Dvorak typist, but I've been using Emacs for a few years. The chords are burned into my brain, and I'd rather not retrain myself.

What I've found quite workable is C-\ english-dvorak (set-input-method). The keyboard is remapped to Dvorak, but the chords remain the same (that is, C-x C-f is C-(second key from l-shift) C-(fourth key from caps)). This is a very convenient middleground, giving me the option to remap keybindings in the future, but not forcing me to learn two new systems at once.

If you set the variable default-input-method to english-dvorak, you can just hit C-\ to activate it. This doesn't work if your system keyboard is also mapped to Dvorak, but it's worked for me because I do mostly everything in emacs.

Related Question