From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Corey Foote Newsgroups: gmane.emacs.help Subject: RE: Half-QWERTY keyboard minor mode Date: Mon, 29 Sep 2008 13:02:28 -0400 Message-ID: References: <7a1fe684-913f-4516-98a4-56c49c142682@j22g2000hsf.googlegroups.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="_edae1015-e821-44d3-9787-b962cd65475e_" X-Trace: ger.gmane.org 1222707803 23379 80.91.229.12 (29 Sep 2008 17:03:23 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 29 Sep 2008 17:03:23 +0000 (UTC) To: weber , Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Sep 29 19:04:19 2008 connect(): Connection refused Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KkMAR-00053f-37 for geh-help-gnu-emacs@m.gmane.org; Mon, 29 Sep 2008 19:04:15 +0200 Original-Received: from localhost ([127.0.0.1]:50803 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KkM9O-0007dZ-GY for geh-help-gnu-emacs@m.gmane.org; Mon, 29 Sep 2008 13:03:10 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KkM8p-0007X7-0p for help-gnu-emacs@gnu.org; Mon, 29 Sep 2008 13:02:35 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KkM8l-0007Uu-Ge for help-gnu-emacs@gnu.org; Mon, 29 Sep 2008 13:02:34 -0400 Original-Received: from [199.232.76.173] (port=59634 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KkM8k-0007Ue-VB for help-gnu-emacs@gnu.org; Mon, 29 Sep 2008 13:02:31 -0400 Original-Received: from blu0-omc4-s6.blu0.hotmail.com ([65.55.111.145]:32324) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KkM8k-0002Ly-E4 for help-gnu-emacs@gnu.org; Mon, 29 Sep 2008 13:02:30 -0400 Original-Received: from BLU105-W55 ([65.55.111.135]) by blu0-omc4-s6.blu0.hotmail.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 29 Sep 2008 10:02:29 -0700 X-Originating-IP: [75.67.96.217] Importance: Normal In-Reply-To: <7a1fe684-913f-4516-98a4-56c49c142682@j22g2000hsf.googlegroups.com> X-OriginalArrivalTime: 29 Sep 2008 17:02:29.0054 (UTC) FILETIME=[27B57DE0:01C92255] X-detected-operating-system: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:58201 Archived-At: --_edae1015-e821-44d3-9787-b962cd65475e_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Hi=2C 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 `righ= t-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 thi= s 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 varia= ble.") (make-variable-buffer-local ...)) (defun right-hand-qwerty (&optiona= l arg) "Qwerty for right-hand only typing." (interactive ...) (setq right-h= and-qwerty ...) (run-hooks ... ...) (if ... ...) (force-mode-line-update) r= ight-hand-qwerty) :autoload-end nil (add-minor-mode (quote right-hand-qwert= y) (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 typ= ing." (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=2C 29 Sep 2008 09:30:55 -0700 > To: help-gnu-emacs@gnu.org > Subject: Re: Half-QWERTY keyboard minor mode >=20 > On 29 set=2C 11:44=2C Corey Foote wrote: > > Hi everybody=2C > > > > I injured my left hand the other day=2C so I'm typing one > > handed until it recovers. I was wondering if it would be possible to cr= eate 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=2C SPACE-u for r= =2C etc. For details on the half-QWERTY keyboard see:http://www.billbuxton.= com/matiasHCI96.html#c2)I'mnot much of a LISP programmer=2C so any help I c= ould get on this > > would be most appreciated. Once the minor mode is complete=2C I will pu= t the > > source code on the Emacs wiki accessibility section. Thanks! > > > > _________________________________________________________________ > > See how Windows Mobile brings your life together=97at home=2C work=2C o= r on the go.http://clk.atdmt.com/MRT/go/msnnkwxp1020093182mrt/direct/01/ >=20 > Something like this seems to work: >=20 > (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 =2C(concat "SPC " (second key))) (lambda > () (interactive) (insert =2C(first key)))))) > (local-set-key (kbd "SPC SPC") (lambda () (interactive) (insert " > "))))) >=20 > This helps you? > -Hugo _________________________________________________________________ Stay up to date on your PC=2C the Web=2C and your mobile phone with Windows= Live. http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/= --_edae1015-e821-44d3-9787-b962cd65475e_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Hi=2C when I evaluate that I get:

Debugger entered--Lisp error: (voi= d-function second)
 =3B (second key)
 =3B (concat "SPC " (sec= ond key))
 =3B (list (quote kbd) (concat "SPC " (second key)))
&n= bsp=3B (list (quote local-set-key) (list (quote kbd) (concat "SPC " ...)) (= list (quote lambda) nil (quote ...) (list ... ...)))
 =3B (\` (local= -set-key (kbd ...) (lambda nil ... ...)))
 =3B (eval (\` (local-set-= key ... ...)))
 =3B (while --dolist-tail-- (setq key (car --dolist-t= ail--)) (eval (\` ...)) (setq --dolist-tail-- (cdr --dolist-tail--)))
&n= bsp=3B (let ((--dolist-tail-- keypairs) key) (while --dolist-tail-- (setq k= ey ...) (eval ...) (setq --dolist-tail-- ...)))
 =3B (dolist (key ke= ypairs) (eval (\` ...)))
 =3B (let ((keypairs ...)) (dolist (key key= pairs) (eval ...)) (local-set-key (kbd "SPC SPC") (lambda nil ... ...))) =3B (defvar right-hand-qwerty (let (...) (dolist ... ...) (local-set-= key ... ...)) "Non-nil if Right-Hand-Qwerty mode is enabled.\nUse the comma= nd `right-hand-qwerty' to change this variable.")
 =3B (progn (defva= r 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)))
 =3B (progn (= progn (defvar right-hand-qwerty ... "Non-nil if Right-Hand-Qwerty mode is e= nabled.\nUse the command `right-hand-qwerty' to change this variable.") (ma= ke-variable-buffer-local ...)) (defun right-hand-qwerty (&=3Boptional ar= g) "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 ... ...)))
 =3B (define-minor-mode right-hand-qwerty = "Qwerty for right-hand only typing." (let (...) (dolist ... ...) (local-set= -key ... ...)))
 =3B eval((define-minor-mode right-hand-qwerty "Qwer= ty for right-hand only typing." (let (...) (dolist ... ...) (local-set-key = ... ...))))
 =3B eval-last-sexp-1(nil)
 =3B eval-last-sexp(ni= l)
 =3B call-interactively(eval-last-sexp)

>=3B From: hugow= s@gmail.com
>=3B Date: Mon=2C 29 Sep 2008 09:30:55 -0700
>=3B To:= help-gnu-emacs@gnu.org
>=3B Subject: Re: Half-QWERTY keyboard minor m= ode
>=3B
>=3B On 29 set=2C 11:44=2C Corey Foote <=3Bcoreyfo...= @hotmail.com>=3B wrote:
>=3B >=3B Hi everybody=2C
>=3B >=3B=
>=3B >=3B I injured my left hand the other day=2C so I'm typing one=
>=3B >=3B handed until it recovers. I was wondering if it would be = possible to create an Emacs
>=3B >=3B minor mode which would allow h= alf-QWERTY typing on a regular keyboard. (The way half-QWERTY typing works = is you hit SPACE-y for t=2C SPACE-u for r=2C etc. For details on the half-Q= WERTY keyboard see:http://www.billbuxton.com/matiasHCI96.html#c2)I'mnot muc= h of a LISP programmer=2C so any help I could get on this
>=3B >=3B = would be most appreciated. Once the minor mode is complete=2C I will put th= e
>=3B >=3B source code on the Emacs wiki accessibility section. Tha= nks!
>=3B >=3B
>=3B >=3B ____________________________________= _____________________________
>=3B >=3B See how Windows Mobile bring= s your life together=97at home=2C work=2C or on the go.http://clk.atdmt.com= /MRT/go/msnnkwxp1020093182mrt/direct/01/
>=3B
>=3B Something lik= e this seems to work:
>=3B
>=3B (define-minor-mode right-hand-qw= erty
>=3B "Qwerty for right-hand only typing."
>=3B (let ((key= pairs '(("q" "p") ("w" "o"))))
>=3B (dolist (key keypairs)
>=3B = (eval `(local-set-key (kbd =2C(concat "SPC " (second key))) (lambda
&= gt=3B () (interactive) (insert =2C(first key))))))
>=3B (local-set-ke= y (kbd "SPC SPC") (lambda () (interactive) (insert "
>=3B ")))))
&g= t=3B
>=3B This helps you?
>=3B -Hugo


Stay up to d= ate on your PC=2C the Web=2C and your mobile phone with Windows Live. See Now = --_edae1015-e821-44d3-9787-b962cd65475e_--