Thanks! It works now. The only problem is I can't seem to type a space while in right-hand-qwerty mode. > Date: Mon, 29 Sep 2008 15:53:39 -0300 > From: hugows@gmail.com > To: coreyfoote@hotmail.com > Subject: Re: Half-QWERTY keyboard minor mode > > Oh, Please eval (require 'cl) before, then :) > > Cheers > > On Mon, Sep 29, 2008 at 2:02 PM, Corey Foote wrote: > > Hi, when I evaluate that I get: > > > > Debugger entered--Lisp error: (void-function second) > > (second key) > > (concat "SPC " (second key)) > > (list (quote kbd) (concat "SPC " (second key))) > > (list (quote local-set-key) (list (quote kbd) (concat "SPC " ...)) (list > > (quote lambda) nil (quote ...) (list ... ...))) > > (\` (local-set-key (kbd ...) (lambda nil ... ...))) > > (eval (\` (local-set-key ... ...))) > > (while --dolist-tail-- (setq key (car --dolist-tail--)) (eval (\` ...)) > > (setq --dolist-tail-- (cdr --dolist-tail--))) > > (let ((--dolist-tail-- keypairs) key) (while --dolist-tail-- (setq key > > ...) (eval ...) (setq --dolist-tail-- ...))) > > (dolist (key keypairs) (eval (\` ...))) > > (let ((keypairs ...)) (dolist (key keypairs) (eval ...)) (local-set-key > > (kbd "SPC SPC") (lambda nil ... ...))) > > (defvar right-hand-qwerty (let (...) (dolist ... ...) (local-set-key ... > > ...)) "Non-nil if Right-Hand-Qwerty mode is enabled.\nUse the command > > `right-hand-qwerty' to change this variable.") > > (progn (defvar right-hand-qwerty (let ... ... ...) "Non-nil if > > Right-Hand-Qwerty mode is enabled.\nUse the command `right-hand-qwerty' to > > change this variable.") (make-variable-buffer-local (quote > > right-hand-qwerty))) > > (progn (progn (defvar right-hand-qwerty ... "Non-nil if Right-Hand-Qwerty > > mode is enabled.\nUse the command `right-hand-qwerty' to change this > > variable.") (make-variable-buffer-local ...)) (defun right-hand-qwerty > > (&optional arg) "Qwerty for right-hand only typing." (interactive ...) (setq > > right-hand-qwerty ...) (run-hooks ... ...) (if ... ...) > > (force-mode-line-update) right-hand-qwerty) :autoload-end nil > > (add-minor-mode (quote right-hand-qwerty) (quote nil) (if ... ...))) > > (define-minor-mode right-hand-qwerty "Qwerty for right-hand only typing." > > (let (...) (dolist ... ...) (local-set-key ... ...))) > > eval((define-minor-mode right-hand-qwerty "Qwerty for right-hand only > > typing." (let (...) (dolist ... ...) (local-set-key ... ...)))) > > eval-last-sexp-1(nil) > > eval-last-sexp(nil) > > call-interactively(eval-last-sexp) > > > >> From: hugows@gmail.com > >> Date: Mon, 29 Sep 2008 09:30:55 -0700 > >> To: help-gnu-emacs@gnu.org > >> Subject: Re: Half-QWERTY keyboard minor mode > >> > >> On 29 set, 11:44, Corey Foote wrote: > >> > Hi everybody, > >> > > >> > I injured my left hand the other day, so I'm typing one > >> > handed until it recovers. I was wondering if it would be possible to > >> > create an Emacs > >> > minor mode which would allow half-QWERTY typing on a regular keyboard. > >> > (The way half-QWERTY typing works is you hit SPACE-y for t, SPACE-u for r, > >> > etc. For details on the half-QWERTY keyboard > >> > see:http://www.billbuxton.com/matiasHCI96.html#c2)I'mnot much of a LISP > >> > programmer, so any help I could get on this > >> > would be most appreciated. Once the minor mode is complete, I will put > >> > the > >> > source code on the Emacs wiki accessibility section. Thanks! > >> > > >> > _________________________________________________________________ > >> > See how Windows Mobile brings your life together—at home, work, or on > >> > the go.http://clk.atdmt.com/MRT/go/msnnkwxp1020093182mrt/direct/01/ > >> > >> Something like this seems to work: > >> > >> (define-minor-mode right-hand-qwerty > >> "Qwerty for right-hand only typing." > >> (let ((keypairs '(("q" "p") ("w" "o")))) > >> (dolist (key keypairs) > >> (eval `(local-set-key (kbd ,(concat "SPC " (second key))) (lambda > >> () (interactive) (insert ,(first key)))))) > >> (local-set-key (kbd "SPC SPC") (lambda () (interactive) (insert " > >> "))))) > >> > >> This helps you? > >> -Hugo > > > > ________________________________ > > Stay up to date on your PC, the Web, and your mobile phone with Windows > > Live. See Now _________________________________________________________________ See how Windows connects the people, information, and fun that are part of your life. http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/