[gambit-list] Emacs pinky...

David St-Hilaire sthilaid at iro.umontreal.ca
Fri Sep 25 10:06:49 EDT 2009


Hi all!

I believe I've recently fallen victim to the infamous 'Emacs pinky'
sickness (see http://en.wikipedia.org/wiki/Emacs#Emacs_Pinky)... :(

I made several changes to my working environment in hope to remedy the
situation, such as swaping ctl and alt. I also am trying to learn to
press control keys with one hand and the other combo key with the
other thus using both controls and alt keys. I'll go check today if I
can find an ergonomic keyboard too.

Does anyone have some other ideas/tips for improving the situation?
Using vi is my last resort option as I am really familiar with emacs
and love it alot...

Thanks!

David

PS: I am pasting here the changes I made in hope they might get
usefull to others that may want to avoid this problem...

~/.swapCtlAlt.xmodmap
keycode 37 = Alt_L Meta_L
keycode 64 = Control_L
keycode 108 = Control_R
keycode 105 = Alt_R Meta_R
clear Control
clear Mod1
add Control = Control_L Control_R
add Mod1 = Alt_L Alt_R

~/.bashrc
xmodmap .swapCtlAlt.xmodmap

~/.emacs:
(global-set-key (kbd "1") (lambda () (interactive) (insert ?!)))
(global-set-key (kbd "2") (lambda () (interactive) (insert ?@)))
(global-set-key (kbd "3") (lambda () (interactive) (insert ?#)))
(global-set-key (kbd "4") (lambda () (interactive) (insert ?$)))
(global-set-key (kbd "5") (lambda () (interactive) (insert ?%)))
(global-set-key (kbd "6") (lambda () (interactive) (insert ?^)))
(global-set-key (kbd "7") (lambda () (interactive) (insert ?&)))
(global-set-key (kbd "8") (lambda () (interactive) (insert ?*)))
(global-set-key (kbd "9") (lambda () (interactive) (insert ?\()))
(global-set-key (kbd "0") (lambda () (interactive) (insert ?\))))

(global-set-key (kbd "!") (lambda () (interactive) (insert ?1)))
(global-set-key (kbd "@") (lambda () (interactive) (insert ?2)))
(global-set-key (kbd "#") (lambda () (interactive) (insert ?3)))
(global-set-key (kbd "$") (lambda () (interactive) (insert ?4)))
(global-set-key (kbd "%") (lambda () (interactive) (insert ?5)))
(global-set-key (kbd "^") (lambda () (interactive) (insert ?6)))
(global-set-key (kbd "&") (lambda () (interactive) (insert ?7)))
(global-set-key (kbd "*") (lambda () (interactive) (insert ?8)))
(global-set-key [?\(] (lambda () (interactive) (insert ?9)))
(global-set-key [?\)] (lambda () (interactive) (insert ?0)))

~/.../paredit.el
(progn (setq paredit-commands
 `(
   "Basic Insertion Commands"
   ("9"         paredit-open-round
                ("(a b |c d)"
                 "(a b (|) c d)")
                ("(foo \"bar |baz\" quux)"
                 "(foo \"bar (|baz\" quux)"))
   ("0"         paredit-close-round
                ("(a b |c   )" "(a b c)|")
                ("; Hello,| world!"
                 "; Hello,)| world!"))
   ...
   "Depth-Changing Commands"
   ("M-9"       paredit-wrap-round
                ("(foo |bar baz)"
                 "(foo (|bar) baz)"))
   ...
   "Barfage & Slurpage"
   (("C-0" "C-<right>")
                paredit-forward-slurp-sexp
                ("(foo (bar |baz) quux zot)"
                 "(foo (bar |baz quux) zot)")
                ("(a b ((c| d)) e f)"
                 "(a b ((c| d) e) f)"))
   ))
       nil)



More information about the Gambit-list mailing list