unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Half-QWERTY keyboard minor mode
@ 2008-09-29 14:44 Corey Foote
  2008-09-29 17:35 ` Corey Foote
  0 siblings, 1 reply; 8+ messages in thread
From: Corey Foote @ 2008-09-29 14:44 UTC (permalink / raw)
  To: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 832 bytes --]


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'm not 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/

[-- Attachment #2: Type: text/html, Size: 1025 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Half-QWERTY keyboard minor mode
       [not found] <mailman.20155.1222699482.18990.help-gnu-emacs@gnu.org>
@ 2008-09-29 16:30 ` weber
  2008-09-29 17:02   ` Corey Foote
  2008-10-04 21:47 ` Xah
  1 sibling, 1 reply; 8+ messages in thread
From: weber @ 2008-09-29 16:30 UTC (permalink / raw)
  To: help-gnu-emacs

On 29 set, 11:44, Corey Foote <coreyfo...@hotmail.com> 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


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: Half-QWERTY keyboard minor mode
  2008-09-29 16:30 ` weber
@ 2008-09-29 17:02   ` Corey Foote
       [not found]     ` <2f1c7d020809291153r2c7f1018o80bb8d8e30b7c085@mail.gmail.com>
  0 siblings, 1 reply; 8+ messages in thread
From: Corey Foote @ 2008-09-29 17:02 UTC (permalink / raw)
  To: weber, help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 3760 bytes --]


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 <coreyfo...@hotmail.com> 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.
http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/

[-- Attachment #2: Type: text/html, Size: 4252 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: Half-QWERTY keyboard minor mode
  2008-09-29 14:44 Half-QWERTY keyboard minor mode Corey Foote
@ 2008-09-29 17:35 ` Corey Foote
  2008-09-29 20:22   ` Paul R
  0 siblings, 1 reply; 8+ messages in thread
From: Corey Foote @ 2008-09-29 17:35 UTC (permalink / raw)
  To: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 1149 bytes --]


I found a demo of what I'm trying to do: http://half-qwerty.com/demo/

From: coreyfoote@hotmail.com
To: help-gnu-emacs@gnu.org
Date: Mon, 29 Sep 2008 10:44:33 -0400
Subject: Half-QWERTY keyboard minor mode








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'm not 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. See Now

_________________________________________________________________
See how Windows Mobile brings your life together—at home, work, or on the go.
http://clk.atdmt.com/MRT/go/msnnkwxp1020093182mrt/direct/01/

[-- Attachment #2: Type: text/html, Size: 1718 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: Half-QWERTY keyboard minor mode
       [not found]     ` <2f1c7d020809291153r2c7f1018o80bb8d8e30b7c085@mail.gmail.com>
@ 2008-09-29 19:17       ` Corey Foote
  2008-10-03  2:24         ` Kevin Rodgers
  0 siblings, 1 reply; 8+ messages in thread
From: Corey Foote @ 2008-09-29 19:17 UTC (permalink / raw)
  To: Hugo Schmitt, help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 4616 bytes --]


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 <coreyfoote@hotmail.com> 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 <coreyfo...@hotmail.com> 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/

[-- Attachment #2: Type: text/html, Size: 5656 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Half-QWERTY keyboard minor mode
  2008-09-29 17:35 ` Corey Foote
@ 2008-09-29 20:22   ` Paul R
  0 siblings, 0 replies; 8+ messages in thread
From: Paul R @ 2008-09-29 20:22 UTC (permalink / raw)
  To: Corey Foote; +Cc: help-gnu-emacs

On Mon, 29 Sep 2008 13:35:12 -0400, Corey Foote <coreyfoote@hotmail.com> said:

Corey> I found a demo of what I'm trying to do:
Corey> http://half-qwerty.com/demo/

Impressively efficient

-- 
  Paul




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Half-QWERTY keyboard minor mode
  2008-09-29 19:17       ` Corey Foote
@ 2008-10-03  2:24         ` Kevin Rodgers
  0 siblings, 0 replies; 8+ messages in thread
From: Kevin Rodgers @ 2008-10-03  2:24 UTC (permalink / raw)
  To: help-gnu-emacs

Corey Foote wrote:
> Thanks! It works now. The only problem is I can't seem to type a space 
> while in right-hand-qwerty mode.

This part of Hugo's solution allows you to insert a space by typing it
twice (SPC SPC):

>  > >> (local-set-key (kbd "SPC SPC") (lambda () (interactive) (insert "
>  > >> ")))))

-- 
Kevin Rodgers
Denver, Colorado, USA





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Half-QWERTY keyboard minor mode
       [not found] <mailman.20155.1222699482.18990.help-gnu-emacs@gnu.org>
  2008-09-29 16:30 ` weber
@ 2008-10-04 21:47 ` Xah
  1 sibling, 0 replies; 8+ messages in thread
From: Xah @ 2008-10-04 21:47 UTC (permalink / raw)
  To: help-gnu-emacs

Corey Foote wrote:
«For details on the half-QWERTY keyboard see:http://www.billbuxton.com/
matiasHCI96.html#c2»

half-QWERTY seems ill conceived.

If you check the author, it's his university thesis and the design
Patented in US and Europe by his own company.

It compares something he cooked up “half-dvorak” and chalk it up to
use in single handed typing devices in wearable computer.

For comparison, on standard keyboard, if you only have one hand,
there's already Single handed Dvorak, one version for left and and one
version for right hand.
See http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard

So, if you are handicapp'd and can only use one hand to type on
standard PC keyboard, single handed Dvorak would probably be much more
efficient. (the article don't mention it)

Now, if one is thinking of keyboard input devices that must be
designed for single hand use, as stated in the article, such as some
future vision of wearable computer on the forearm, then there's no
good reason to limit the physical design of such input device to
something like cutting up existing to half of standard PC keyboard.
There are, for example, numberous design of chorded input devices for
single hand that are actually in use.

As for ease of transition of learning, as cited in the article as a
major reason... there are lots problems. For example, first of all,
majority of people who use a PC keyboard do not touch type. So, he's
presumed ease of transition is useless. Even, suppose we limit the
subjects to people who already touch type qwerty, then, learning the
half-QWERTY is not necessarily faster than learning a single hand
dvorak. (the simply doesn't mention single hand dvorak)

...

  Xah
∑ http://xahlee.org/^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2008-10-04 21:47 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-29 14:44 Half-QWERTY keyboard minor mode Corey Foote
2008-09-29 17:35 ` Corey Foote
2008-09-29 20:22   ` Paul R
     [not found] <mailman.20155.1222699482.18990.help-gnu-emacs@gnu.org>
2008-09-29 16:30 ` weber
2008-09-29 17:02   ` Corey Foote
     [not found]     ` <2f1c7d020809291153r2c7f1018o80bb8d8e30b7c085@mail.gmail.com>
2008-09-29 19:17       ` Corey Foote
2008-10-03  2:24         ` Kevin Rodgers
2008-10-04 21:47 ` Xah

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).