From: Xah Lee <xah@xahlee.org>
To: help-gnu-emacs@gnu.org
Subject: Re: emacs keybinding syntaxes bewilderment
Date: Fri, 14 Dec 2007 17:57:10 -0800 (PST) [thread overview]
Message-ID: <18a63926-ca59-45e3-b8e8-d697a7628ace@a35g2000prf.googlegroups.com> (raw)
In-Reply-To: T-KdnXvAj90kk_7anZ2dnUVZ_h6hnZ2d@sysmatrix.net
Thanks for the answer about how to make PC keyboard's Windows key as
Hyper.
B. T. Raven wrote:
「
;; Single char cursor movement on Dvorak layout
(global-set-key [(meta h)] 'backward-char)
(global-set-key [(meta n)] 'forward-char)
(global-set-key [(meta c)] 'previous-line)
(global-set-key [(meta t)] 'next-line)
」
Great. I did exactly the same, starting in about 1992 across Mac using
the QuicKeys utility, then with pure emacs since i stopped using
QuicKeys in about 2002.
(Mac OS X does have a system-wide scheme to rebind keys, see
http://xahlee.org/emacs/osx_keybinding.html
however, the problem is that it's not really universal, since many
apps not using Cocoa Text System will not respect it. (this includes
some major apps such as Finder, FireFox, Opera, TextWrangler... so
practically making it far less useful))
「What I really want is for those first four bindings to be used with
the Ctrl modifier rather than Meta, but the C-h and C-c prefixes
preclude that possibility.」
Yeah, i understand exactly: you wanted the modifier keys for cursor
movements to be the one immediate neighbor to the space bar, so the
thumb can press it readily.
I did a fairly extensive remapping here
http://xahlee.org/emacs/ergonomic_emacs_keybinding.html
I didn't swap Control and Meta, instead, i considered the Meta-<<key>>
space free and placed all major cursor moving and editing functions to
it.
My current .emacs for keybinding are these:
http://xahlee.org/emacs/xah_emacs_kbd_shortcuts.el
http://xahlee.org/emacs/ergonomic_keybinding_dvorak.el
http://xahlee.org/emacs/xah_emacs_unicode_input.el
Xah
xah@xahlee.org
\xAD\xF4 http://xahlee.org/
On Dec 14, 3:15 pm, "B. T. Raven" <ni...@nihilo.net> wrote:
> Yes. I have the following in my .emacs:
>
> (setq w32-pass-lwindow-to-system nil
> w32-pass-rwindow-to-system nil
> w32-pass-apps-to-system nil
> w32-lwindow-modifier 'super ;; Left Windows
> w32-rwindow-modifier 'super ;; Right Windows
> w32-apps-modifier 'hyper) ;; App-Menu (key to right of Right
> Windows)
>
> In addition I have used Keytweak (on w2000 or better (later,
> whatever)changes registry scancode interpretations) to make the order of the
> modifiers in bottom row super alt control spacebar control alt super hyper.
> For this to work you need a keyboard where all the modifier keycaps can be
> swapped around. Since I used the Dvorak layout, even with these hacks, the
> best I can do to be able to touch type keychords and get any ergonomic
> effect is to redefine these keys:
>
> ;; Single char cursor movement on Dvorak layout
> (global-set-key [(meta h)] 'backward-char)
> (global-set-key [(meta n)] 'forward-char)
> (global-set-key [(meta c)] 'previous-line)
> (global-set-key [(meta t)] 'next-line)
>
> ;;substitute for stolen metakeychords
> (global-set-key [(control p)] 'mark-paragraph)
> (global-set-key [(control b)] 'capitalize-word)
> (global-set-key [(control f)] 'find-function-at-point)
> (global-set-key [(shift control f)] 'find-variable-at-point)
>
> What I really want is for those first four bindings to be used with the Ctrl
> modifier rather than Meta, but the C-h and C-c prefixes preclude that
> possibility.
>
> Ed
next prev parent reply other threads:[~2007-12-15 1:57 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-14 22:24 emacs keybinding syntaxes bewilderment Xah Lee
2007-12-14 23:15 ` B. T. Raven
2007-12-15 1:57 ` Xah Lee [this message]
2007-12-15 16:48 ` rustom
2007-12-16 7:22 ` Mike Mattie
[not found] ` <mailman.5061.1197789814.18990.help-gnu-emacs@gnu.org>
2007-12-16 8:25 ` rustom
2007-12-16 8:56 ` Harald Hanche-Olsen
2007-12-16 16:39 ` rustom
2007-12-16 19:37 ` Harald Hanche-Olsen
2007-12-16 23:21 ` Peter Dyballa
2007-12-16 23:33 ` Lennart Borgman (gmail)
2007-12-16 23:50 ` Peter Dyballa
2007-12-17 10:17 ` Sebastian Tennant
[not found] ` <mailman.5091.1197886901.18990.help-gnu-emacs@gnu.org>
2007-12-17 12:56 ` Romain Francoise
2007-12-17 9:38 ` Tassilo Horn
2007-12-18 6:12 ` Xah Lee
2007-12-19 2:27 ` Xah
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=18a63926-ca59-45e3-b8e8-d697a7628ace@a35g2000prf.googlegroups.com \
--to=xah@xahlee.org \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.