On Sat, Mar 12, 2011 at 10:54 AM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
> ;; Swap “Ctrl+x” and “Ctrl+t”, so it's easier to type on Dvorak layout
> (keyboard-translate ?\C-t ?\C-x)
> (keyboard-translate ?\C-x ?\C-t)
There are 32 Ctrl+letter combinations which are characters, and the
above two are among them. These are exceptional special cases due
to history. My general recommendation is to not use keyboard-translate
but key-translation-map or function-key-map, which work on arbitrary
key sequences rather only on single-char events.
I got these exact keyboard-translate lines from Xah's blog. They don't work reliably on Windows. Sometimes after switching back to Emacs from another program, and my first input to Emacs is C-j, C-j still registers instead of C-x.
How would I use key-translation-map to do the swap?
(define-key key-translation-map [(control x)] [(control j)])
(define-key key-translation-map [(control j)] [(control x)])
C-j seems regixter as C-x. But C-x acting like a prefix key, waiting for the next input.
Stefan