Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

emacs-w3m question

17 views
Skip to first unread message

Francis Moreau

unread,
Oct 27, 2008, 4:45:35 PM10/27/08
to
Hello,

Is there a fast way to jump to the 4th link (for example) that Google
proposes after a search ? Currently I'm using C-s and start typing the
proposed title.

thanks

Francis

henry atting

unread,
Oct 27, 2008, 5:09:34 PM10/27/08
to
Zitat - Francis Moreau * Mo Okt 27 2008 um 21:45 -

If you know the exact number of your link already you could do it with a
prefix argument:

C-u 4 <down>

Some time ago I used to do it with `goto-line', therefore I started
emacs-w3m with a hook to start linum-mode also.

henry

Richard Riley

unread,
Oct 27, 2008, 5:36:41 PM10/27/08
to
henry atting <att...@literaturlatenight.de> writes:

Is there a solution if we have different key bindings for cursoring? e.g
I want the cursor to roam freely for selective copying to clipboard so
down does not move to the next link.

e.g I have

(setq w3m-key-binding (quote info))

w3m-next-anchor picks up other links than the main ones.

regards

r.

Andreas Politz

unread,
Oct 27, 2008, 5:48:28 PM10/27/08
to


M-x w3m-link-numbering-mode RET

Then links get numbers attached, which you can use to navigate, e.g.
20 RET

-ap

Francis Moreau

unread,
Oct 28, 2008, 6:50:37 AM10/28/08
to
Andreas Politz <pol...@fh-trier.de> writes:

> Francis Moreau wrote:
> M-x w3m-link-numbering-mode RET
>
> Then links get numbers attached, which you can use to navigate, e.g.
> 20 RET

That's it !

Thanks

Francis

OtherMichael

unread,
Oct 28, 2008, 10:51:01 AM10/28/08
to

There's a nice function that wraps all this up so you only see the
numbered-link when you want to

see http://emacs.wordpress.com/2008/04/12/numbered-links-in-emacs-w3m/

--the Other michael

Xah

unread,
Oct 28, 2008, 2:40:56 PM10/28/08
to
On Oct 27, 2:36 pm, Richard Riley <rileyrg...@gmail.com> wrote:
> henry atting <att...@literaturlatenight.de> writes:
> > Zitat - Francis Moreau * Mo Okt 27 2008 um 21:45 -
>
> >> Hello,
>
> >> Is there a fast way to jump to the 4th link (for example) that Google
> >> proposes after a search ? Currently I'm using C-s and start typing the
> >> proposed title.

> > C-u 4 <down>

> Is there a solution if we have different key bindings for cursoring? e.g
> I want the cursor to roam freely for selective copying to clipboard so
> down does not move to the next link.
>
> e.g I have
>
> (setq w3m-key-binding (quote info))

Here's what i do:

(add-hook 'w3m-mode-hook
(lambda ()
(define-key w3m-mode-map (kbd "<up>") 'previous-line) ; was w3m-
previous-anchor. Use Shift+Tab.
(define-key w3m-mode-map (kbd "<down>") 'next-line) ; was w3m-next-
anchor. Use Tab.
(define-key w3m-mode-map (kbd "<left>") 'backward-char) ; was w3m-
view-previous-page. Use B.
(define-key w3m-mode-map (kbd "<right>") 'forward-char) ; was w3m-
view-this-url. Use Enter.
))

i think it is good to make this default. More intuitive for emacs
users.

PS i noticed that w3m is 2 or 3 times slower than a full featured
browser. I have w3m in text only mode. I have a function that looks up
webpage in both Opera and w3m in emacs. The opera almost always
finished loading the page 3 or more times faster than w3m with emacs.
(the Opera has image, css on. My w3m has images off.)

Xah
http://xahlee.org/


Xavier Maillard

unread,
Oct 30, 2008, 5:25:02 PM10/30/08
to Xah, help-gn...@gnu.org
Hi,

Here's what i do:

(add-hook 'w3m-mode-hook
(lambda ()
(define-key w3m-mode-map (kbd "<up>") 'previous-line) ; was w3m-
previous-anchor. Use Shift+Tab.
(define-key w3m-mode-map (kbd "<down>") 'next-line) ; was w3m-next-
anchor. Use Tab.
(define-key w3m-mode-map (kbd "<left>") 'backward-char) ; was w3m-
view-previous-page. Use B.
(define-key w3m-mode-map (kbd "<right>") 'forward-char) ; was w3m-
view-this-url. Use Enter.
))

i think it is good to make this default. More intuitive for emacs
users.

For your information, many old computers do not have
Up/Down/Left/Right keys thus making this as a default won't work
for them. I never use these key due to my habits. Therefor I
strongly disagree with you on that point.

Xavier
--
http://www.gnu.org
http://www.april.org
http://www.lolica.org


Paul R

unread,
Oct 30, 2008, 6:16:59 PM10/30/08
to Xavier Maillard, help-gn...@gnu.org, Xah

Xavier> For your information, many old computers do not have
Xavier> Up/Down/Left/Right keys thus making this as a default won't work
Xavier> for them. I never use these key due to my habits. Therefor
Xavier> I strongly disagree with you on that point.

Defaults are for newcomers to quickly get hands on the thing. Nowaday,
how many newcomers to emacs would discover it on a system without
directional keys ? I bet 0, how many do you bet ?

Now how many of them will find themselves unable to try a mode without
asking on a mailing list, just because of weird keybindings ?

--
Paul


Xah

unread,
Oct 30, 2008, 6:38:37 PM10/30/08
to
Xah Lee wrote:
> Here's what i do:
>
> (add-hook 'w3m-mode-hook
> (lambda ()
> (define-key w3m-mode-map (kbd "<up>") 'previous-line) ; was w3m-
> previous-anchor. Use Shift+Tab.
> (define-key w3m-mode-map (kbd "<down>") 'next-line) ; was w3m-next-
> anchor. Use Tab.
> (define-key w3m-mode-map (kbd "<left>") 'backward-char) ; was w3m-
> view-previous-page. Use B.
> (define-key w3m-mode-map (kbd "<right>") 'forward-char) ; was w3m-
> view-this-url. Use Enter.
> ))
>
> i think it is good to make this default. More intuitive for emacs
> users.

Xavier Maillard <x...@gnu.org> wrote:
> Hi,


> For your information, many old computers do not have
> Up/Down/Left/Right keys thus making this as a default won't work
> for them. I never use these key due to my habits. Therefor I
> strongly disagree with you on that point.

in perhaps early 1990s, some keyboards do not have the arrow keys, or
that some applications (in particular, terminal applications) do not
necessarily support physical arrow keys by default.

Today, i think more than 99.999% keyboards and applications support
the physical arrows keys by default. The availablity of arrow keys i
think is pretty much standard by mid 1990s, and their support in
applications including term emulators is probably standard by 2000.

Xah
http://xahlee.org/


Xavier Maillard

unread,
Nov 1, 2008, 3:25:03 AM11/1/08
to Paul R, help-gn...@gnu.org, xah...@gmail.com

Xavier> For your information, many old computers do not have
Xavier> Up/Down/Left/Right keys thus making this as a default won't work
Xavier> for them. I never use these key due to my habits. Therefor
Xavier> I strongly disagree with you on that point.

Defaults are for newcomers to quickly get hands on the thing.

I do not see why defaults should apply to newcomers, really.
Defaults must apply to the mass (either power users or newcomers).

Paul R

unread,
Nov 1, 2008, 8:59:10 AM11/1/08
to Xavier Maillard, help-gn...@gnu.org, xah...@gmail.com

Xavier> I do not see why defaults should apply to newcomers, really.

Because experienced users know how to change them.

--
Paul


Andreas Politz

unread,
Nov 1, 2008, 9:03:25 AM11/1/08
to

If you don't have or use the cursor keys, why would you mind
what it's default bindings are ? That doesn't make any sense.

-ap

Richard Riley

unread,
Nov 1, 2008, 11:51:19 AM11/1/08
to
Xavier Maillard <x...@gnu.org> writes:

> Xavier> For your information, many old computers do not have
> Xavier> Up/Down/Left/Right keys thus making this as a default won't work
> Xavier> for them. I never use these key due to my habits. Therefor
> Xavier> I strongly disagree with you on that point.
>
> Defaults are for newcomers to quickly get hands on the thing.
>
> I do not see why defaults should apply to newcomers, really.
> Defaults must apply to the mass (either power users or newcomers).
>
> Xavier

The mass have arrow keys. As do 99.99999999999999999% of all new comers.

--
important and urgent problems of the technology of today are no longer the satisfactions of the primary needs or of archetypal wishes, but the reparation of the evils and damages by the technology of yesterday. ~Dennis Gabor, Innovations: Scientific, Technological and Social, 1970

Xavier Maillard

unread,
Nov 3, 2008, 6:25:23 AM11/3/08
to Andreas Politz, help-gn...@gnu.org
Hi,

Xavier Maillard wrote:

> i think it is good to make this default. More intuitive for emacs
> users.
>
> For your information, many old computers do not have
> Up/Down/Left/Right keys thus making this as a default won't work
> for them. I never use these key due to my habits. Therefor I
> strongly disagree with you on that point.
>
> Xavier

If you don't have or use the cursor keys, why would you mind
what it's default bindings are ? That doesn't make any sense.

Read again, it makes pefectly sense (hint: defaults apply to all
users).

Xavier Maillard

unread,
Nov 3, 2008, 6:25:25 AM11/3/08
to Xah, help-gn...@gnu.org
in perhaps early 1990s, some keyboards do not have the arrow keys, or
that some applications (in particular, terminal applications) do not
necessarily support physical arrow keys by default.

Today, i think more than 99.999% keyboards and applications support
the physical arrows keys by default. The availablity of arrow keys i
think is pretty much standard by mid 1990s, and their support in
applications including term emulators is probably standard by 2000.

At work, I still have oldies that still do not support these
keys. What's more, directional keys are one of the dumbest
addition one could have thought off (in my opinion). The same
apply for numerical keypad: what are they useful for exactly ? Is
it that hard to press shift+& (for the azerty keyboard) to get a
1 ? Or press C-b to move point left ? I do not think so.

The real reason that comes to mind is lazyness. People do not
want to (take time to) learn how to do things, they want to go
fast (even if they go fast wrongly). Keyboard (or typing more
generally) is just an example, there are so many other applying
here...

End of digression for me.

Xavier Maillard

unread,
Nov 3, 2008, 6:25:20 AM11/3/08
to Richard Riley, help-gn...@gnu.org

Xavier Maillard <x...@gnu.org> writes:

> Xavier> For your information, many old computers do not have
> Xavier> Up/Down/Left/Right keys thus making this as a default won't work
> Xavier> for them. I never use these key due to my habits. Therefor
> Xavier> I strongly disagree with you on that point.
>
> Defaults are for newcomers to quickly get hands on the thing.
>
> I do not see why defaults should apply to newcomers, really.
> Defaults must apply to the mass (either power users or newcomers).
>
> Xavier

The mass have arrow keys. As do 99.99999999999999999% of all new comers.

Yes I have it on my laptop but I never used them because they are
located to an improbable and unpractical location.

Richard Riley

unread,
Nov 3, 2008, 7:13:39 AM11/3/08
to Xavier Maillard, Richard Riley, help-gn...@gnu.org
Xavier Maillard <x...@gnu.org> writes:

> Xavier Maillard <x...@gnu.org> writes:
>
> > Xavier> For your information, many old computers do not have
> > Xavier> Up/Down/Left/Right keys thus making this as a default won't work
> > Xavier> for them. I never use these key due to my habits. Therefor
> > Xavier> I strongly disagree with you on that point.
> >
> > Defaults are for newcomers to quickly get hands on the thing.
> >
> > I do not see why defaults should apply to newcomers, really.
> > Defaults must apply to the mass (either power users or newcomers).
> >
> > Xavier
>
> The mass have arrow keys. As do 99.99999999999999999% of all new comers.
>

> Yes I have it on my laptop but I never used them because they are
> located to an improbable and unpractical location.
>
> Xavier

With all due respect, the location of the arrow keys on one laptop seem
a dubious pivot for making decisions for a configurable base product
which is aimed at a wide and varied user base. The great majority have
arrow keys, the HW manufacturers built them in ( I haven't seen a keyboard
without them for years). To ignore them because of a minorities poorly
designed, antiquated or specialised HW seems somewhat silly.

Are they the *best* things for hard core Emacs user? Possibly
not. Would a lot of users be confused if they did not work as common
sense dictates? Almost certainly.

Having said that, I'm sure you are not arguing against configuring
them.


Paul R

unread,
Nov 3, 2008, 7:36:01 AM11/3/08
to Xavier Maillard, help-gn...@gnu.org, Xah
Dear Xavier,

Xavier> What's more, directional keys are one of the dumbest addition
Xavier> one could have thought off (in my opinion). The same apply for
Xavier> numerical keypad: what are they useful for exactly ? Is it that
Xavier> hard to press shift+& (for the azerty keyboard) to get a 1 ? Or
Xavier> press C-b to move point left ? I do not think so.

Xavier> The real reason that comes to mind is lazyness. People do not
Xavier> want to (take time to) learn how to do things, they want to go
Xavier> fast (even if they go fast wrongly). Keyboard (or typing more
Xavier> generally) is just an example, there are so many other applying
Xavier> here...

This sounds sooo much like overstated elitism. You may prefer to use C-b
and C-f and S-&, because you're so good and so l33t, this will never
change the point : beginners don't, period. Default settings must help
those people, who have not yet set their .emacs, to use and try the
software and see if they like it or not.

--
Paul


Richard Riley

unread,
Nov 3, 2008, 8:27:56 AM11/3/08
to
Paul R <paul...@gmail.com> writes:

That's pretty much as I see it too. And only recently having become
proficient enough with emacs once again I can attest to the difficulties
involved in understanding some of the more antiquated defaults which do
not take into account beginners. It takes a special kind of curmudgeon
to deny that setting the arrow keys to move the cursor the same as
virtually every other application in the world would help Emacs uptake.

Xah

unread,
Nov 3, 2008, 8:48:14 PM11/3/08
to
On Nov 3, 3:25 am, Xavier Maillard <x...@gnu.org> wrote:
> in perhaps early 1990s, some keyboards do not have the arrow keys, or
> that some applications (in particular, terminal applications) do not
> necessarily support physical arrow keys by default.
>
> Today, i think more than 99.999% keyboards and applications support
> the physical arrows keys by default. The availablity of arrow keys i
> think is pretty much standard by mid 1990s, and their support in
> applications including term emulators is probably standard by 2000.
>
> At work, I still have oldies that still do not support these
> keys. What's more, directional keys are one of the dumbest
> addition one could have thought off (in my opinion). The same
> apply for numerical keypad: what are they useful for exactly ? Is
> it that hard to press shift+& (for the azerty keyboard) to get a
> 1 ? Or press C-b to move point left ? I do not think so.

The numerical keypad, and the physical cursor moving keys, are
technical superior to their counterparts in the main section of the
keyboard for many applications.

For example, if your job is data entry, the numerical keypad is much
more efficient to operate than the numbers on top row of the main
keys.

In the same way, arrow keys, and the dedicated function keys for page
up/down, home/end keys, are superior to key combos in the main section
because they involve single key press with a clear label, and their
physical layout makes them more efficient to operate.

You can test these by, for example, try to type a quarter page of
phone numbers in a yellow book. (this is assuming that you do touch
type on the numerical keypads. (e.g. “you are not a noob who refuse to
learn”)) Similarly, you can try to play pacman by using the arrow
keys, as compared to using Alt+n Alt+p Alt+f Alt+b, and see which one
is more efficient.

Besides operational efficiency in these applications, dedicated keys
also provide clarity and ease of use — elements important in the
design of machineries. Suppose in a jet fighter cockpit it requires
you to use emacs elaborate combinations to control knobs and buttons.

The design of machine-human interfaces, in particular, control panels,
input devices, is a relatively new field with its own industry and
experts. You can look into that.

> The real reason that comes to mind is lazyness. People do not
> want to (take time to) learn how to do things, they want to go
> fast (even if they go fast wrongly). Keyboard (or typing more
> generally) is just an example, there are so many other applying
> here...

people who are expert in one area tends to sneer at newbies or their
stupidity or their “unwillingness to learn”. These sneerings are often
baseless. If the world's things are designed so that they are not
“dumb'd down for newbies”, you'd be already dead in all sorts
accidents in this modern world, or, still learning how to use the
toilet. You think i'm kidding?

But coming back to emacs... one may think that even though emacs is
hard to use, but as soon as one gets over the initial hurdle, it is
actually one of the most perfectly designed system. But in fact, many
aspects of emacs are _technically_ the worst possible. If you do
research on it, you'll find that many of emacs's ways, is the way it
is mostly because of historical happenstances. Only some aspects of
emacs are actually well designed, and a intentional one.

For example, one particular aspect of emacs, its system of
keybindings, are in fact the worst possible. And why emacs's
keybinding is the way it is? it is because it so happened that the 15
or so hackers already got used to the Ctrl+n Ctrl+p Ctrl+f Ctrl+b
keys...

For more detail on this, see:

• Why Emacs's Keyboard Shortcuts Are Painful
http://xahlee.org/emacs/emacs_kb_shortcuts_pain.html

I recommend tech geekers to read the following articles:

http://en.wikipedia.org/wiki/Data_entry_clerk
http://en.wikipedia.org/wiki/Ergonomics

note that the Ergonomics article is fairly long, and most of you
probaby think “O, i already knew what's ergonomics” and thus just
glance it over and groan. Although to most of you the word ergonomics
is just things like keyboarding and monitor setup and seat height and
posture, but broadly it encompasses lots of fields. In particular,
check out the “See Also” section in the bottom. You could spend a
month to to read these articles just to have a idea of what it is
about or involves.

more generally, ergonomics is a form of Operations Research applied to
human-machine operation. See
http://en.wikipedia.org/wiki/Operations_research

For those of you concerned, you might ask “what can we do about the
emacs situation”? I'd recommend to support Aquamacs, Emacs32, file bug
report on emacs usabilities issues (under menu “Help‣Send Bug
Report”), and in general spread the idea.

The following is a plain text version of one of the above article.
----------------------------

Why Emacs's Keyboard Shortcuts Are Painful

Xah Lee, 2007-07

A important aspect in designing a keyboard shortcut set, for a
application that has intensive, repetitive, prolonged human-machine
interaction (such as coding and text editing), is to consider
ergonomic principles. Specifically: allocate keyboard shortcuts for
the most frequently used commands, and, the top most frequently used
commands should have most easily-pressed keystrokes. For example, they
should be on the home row.

This article shows why Emacs's keyboard shortcut set is the most
ergonomically bad.

The Swapping of Control and Meta Modifiers

Emacs's keyboard shortcuts is very inefficient. The primary cause is
because, emacs's keyboard shortcuts are designed with a keyboard that
practically has the Ctrl and Alt key positions swapped.
Space-Cadet keyboard-2m

above: The Space-cadet keyboard. (Large Size: Space..._2.jpg
(2003x813)) (Source↗ 2008-07)

The common keyboard used around emacs era in the 1980s are those
keyboards from Lisp Machines↗. (see Space-cadet keyboard↗) The
keyboard on lisp machines have the Control key right besides the space
bar (similar to the position of Alt keys on PC keyboards), and Meta to
the left of Control. So, the Control key is the primary modifier, and
the Meta is secondary to Control. This is why, the shortcuts for the
most used commands in emacs involve the Control key instead of the
Meta key. (Example: The cursor movements: C-p, C-n, C-f, C-b, C-a, C-
e, the cut/paste/undo C-w, C-y, C-/, the kill-line C-k, the mark C-
SPC, the search C-s.) Lisp Machine's keyboards fell out of use alone
with Lisp Machines. Since the 1990s, the IBM PC keyboard↗ (and its
decedents) becomes the most popular and is used by some 98% of
personal computers today. The PC keyboard does not have Meta key but
have Alt instead. The Alt is placed right beside the space bar, while
Control is placed far to the corner.

Emacs did not change its keyboard shortcut bindings to adapt the PC
keyboard. Emacs simply remapped its Meta shortcuts to the Alt key by
default. (and kept on using the terminology Meta)

The tragedy of the Control/(Alt/Meta) swap made emacs keyboard
shortcuts very painful, and the frequent need to press the far-away
Control key creates the Emacs Pinky syndrome. (Many emacs-using
programer celebrities have injured their hands with emacs. (e.g.
Richard Stallman↗, Jamie Zawinski↗, Ben Wing↗), and emacs's Ctrl and
Meta combinations are most cited as the major turnoff to potential
users among programers)

(For more photos of Lisp Machine's keyboards (all have Control as
primary), see: lisp_machine_symbolics_keyboard.jpg (photo by Rainer
Joswig↗. Used with permission), Symbolics keyboard PN 364000↗,
Symbolics keyboard PN 365407 Rev C↗ by Peter Paine )
The Choice Of Keys

The shortcut's key choices are primarily based on first letter of the
commands, not based on key position and finger strength or ease of
pressing the key. For example, the single char cursor moving shortcuts
(C-p previous-line ↑, C-n next-line ↓, C-b backward-char ←, C-f
forward-char →) are scattered around the keyboard with positions that
are most difficult to press. (these shortcuts all together accounts
for 43% of all commands executed by a keyboard shortcut) Of these, the
most frequently used is C-n (next-line), which accounts for 20% of all
shortcut calls, but is assigned to the letter n, positioned in the
middle of the keyboard, which is one of the most costly key to press.
Similarly, the second most used among these is the C-p (previous-
line), accounting for 16% of all shortcut command calls, is located in
a position above the right hand's pinky, also one of the most costly
key to press.

(Here we assumes the QWERTY keyboard layout. On the Dvorak layout, it
is about as bad.)
emacs cursor qwerty emacs cursor dvorak

above: Emacs's cursor moving keys on qwerty and dvorak.

See also, a newsgroup post on “comp.emacs”. “Re: effective
emacs” (2008-06-01) by Daniel Weinreb↗.
http://groups.google.com/group/comp.emacs/msg/0342e0bc1aa05c0d.

«Emacs's default cursor moving shortcuts are “Ctrl+f”, “Ctrl+b”,
“Ctrl
+n”, “Ctrl+p”. The keys f, b, n, p are scattered around the
keyboard
and are not under the home row.»

That's true. At the time Guy Steele put together the Emacs
default
key mappings, many people in the target user community (about 20
people at MIT!) were already using these key bindings. It would
have been hard to get the new Emacs bindings accepted by the
community if they differed for such basic commands. As you point
out, anyone using Emacs can very easily change this based on
their own ergonomic preferences.

Outdated Commands

A significant portion of emacs's major shortcuts (those with M-‹key›
or C-‹key›) are mapped to commands that are almost never used today.
Some of these occupies the most precious space (Home row with thumb:
For example: M-s (center-line), M-j (indent-new-comment-line), M-k
(kill-sentence)). Most programer who have used emacs for years never
use these commands. For example:

digit-argument, M-1 to M-9
negative-argument, M--

move-to-window-line, M-r
center-line, M-s
transpose-words, M-t
tab-to-tab-stop, M-i

M-g prefix, M-g
indent-new-comment-line, M-j
tmm-menubar, M-'

zap-to-char, M-z
back-to-indentation, M-m
tags-loop-continue, M-,
find-tag, M-.

Difficult Keystrokes for Frequently Used Commands

Some commands that are used by every emacs user many times every hour,
such as Open (find-file; C-x C-f), Save (save-buffer; C-x C-s), Close
(kill-buffer; C-x k), Next Window/Tab (next-buffer C-x →) all require
multiple keystrokes with the difficult Control key.
Standard Name Emacs Command Name Keystroke
Open find-file C-x C-f
Save save-buffer C-x C-s
Close kill-buffer C-x k
Next Tab next-buffer C-x →
Previous Tab previous-buffer C-x ←
No Employment of the Shift Key

For historical reasons, emacs does not use any keybindings involving
the Shift with a letter. (e.g. there's no “Meta Shift a”, or “Control
Shift a”) This is so because in early computing environment, Ctrl+Shift
+‹letter› cannot be distinguished from the non-Shift version, due to a
practical combination of ASCII↗, Computer terminal↗, telnet↗.

Today, however, employing the Shift key as part of a shortcut with
other modifiers is common and convenient. For example, on Mac OS X,
Undo and Redo are Cmd+Z and Cmd+Shift+Z, Save and Save As are Cmd+S
and Cmd+Shift+S. On Mac and Windows, moving to next/previous field/
window/application often use the Shift key for reversing direction. In
text editing on both Mac and Windows, a modifier key with a arrow key
will move cursor by word/paragraph, and with Shift down will select
them while moving.

Using the Shift key as a reverse operation is very easy to remember,
and doesn't take another precious shortcut letter. By not using the
Shift key, commands with a logical reverse operation necessarily have
to find other key space, and overall making the shortcut set more
difficult to remember, or scattered, or more difficult to press.
A Flaw in Keybinding Policy

Any major software, maintains a guide for the developers about the
choices of keyboard shortcuts, so that the shortcuts will be
consistent. Emacs has this in its Emacs Lisp manual: Elisp Manual: Key-
Binding-Conventions.

This guide, indicates that the only key space reserved for users to
define, are the function keys F5 to F9, and key stroke sequence
starting with Ctrl+c followed by a single letter key.

This is a severe restraint to the utility of customized shortcuts. F5
to F9 are only 6 keys. The key sequence starting with C-c followed by
a letter, is a difficult sequence to execute, and there are only 26
spaces there.

The function keys, F1 to F12, are very good candidates for user
defined shortcut space, similarly for the digit key shortcuts, 0 to 9.
These keys can be used with any combination of Control, Meta, Shift.
For example, a user might define them to insert various templates,
headers/footers, a system of customized HTML/XML tags. Or, she might
assign them to various special emacs modes such as dired, shell, ftp,
email, calendar, calc, *scratch*, make-frame-command (Open a new
window), insert signature.

It seems too drastic a policy, to limit user defined keys to only F5
to F9, and key sequence of Control+c followed by a single letter key.
Epilogue: Failure to Change

Today, most commonly used keyboard shortcuts have been somewhat
informally standardized. For example, C/X/V is for Copy/Cut/Paste. O
is for Open. S is for Save, Shift-S is for Save As. P is for Print. F
is for Find/Search. Tab is for next, Shift tab for previous. These are
common conventions today in every application across Microsoft Windows
and Macintosh (and in Linux too in general).

These shortcut conventions are primarily brought about by Apple
Computer Inc's Human interface guidelines↗ and IBM's Common User
Access↗ in the 1990s.

In the early 1990s, DOS era software, each application has its own
scheme of shortcuts. The following is a excerpt from the Wikipedia
article on Common User Access↗:

CUA was a detailed specification and set strict rules about how
applications should look and function. Its aim was in part to bring
about harmony between MS-DOS applications, which until then had
implemented totally different user interfaces.

Examples:

* In WordPerfect, the command to open a file was [F7], [3].
* In Lotus 1-2-3, a file was opened with [/] (to open the
menus), [W] (for Workspace), [R] (for Retrieve).
* In Microsoft Word, a file was opened with [Esc] (to open the
menus), [T] (for Transfer), [L] (for Load).
* In WordStar, it was [Ctrl]+[K]+[O].
* In Emacs, a file was opened with [Ctrl]+[x] followed by
[Ctrl]+[f] (for find-file).

Some programs used [Esc] to cancel an action, some used it to
complete one; WordPerfect used it to repeat a character. Some programs
used [End] to go to the end of a line, some used it to complete
filling in a form. [F1] was often help but in WordPerfect that was
[F3]. [Ins] sometimes toggled between overtype and inserting
characters, but some programs used it for “paste”.

Thus, every program had to be learned individually and its
complete user interface memorized. It was a sign of expertise to have
learned the UIs of dozens of applications, since a novice user facing
a new program would find their existing knowledge of a similar
application absolutely no use whatsoever.

Commercial software have updated themselves with time (or went
extinct), but emacs has not.

If we take a survey of the market share of text editors (including
IDEs) among professional programers (as defined by those who make a
living by computer programing), then, it is my guess, that emacs from
mid 1980s to early 1990s, has more than 50% of market share, but
gradually declined. Today, perhaps less that 5% of professional
programers use emacs (possibly even below 1%). I think, part of the
reason being that emacs has not modernized (not in the sense of being
fashionable, but in the sense of keeping with hardware and software
changes in the IT industry). The other major reason, is because emacs
itself is not a IDE in a modern sense, and most programing development
using compiled languages such as Pascal, C, C++, Java, C#, have moved
on with IDE platforms integrated with these language's compiler
application.

See also: The Modernization of Emacs.

2008-07-15 Addendum: Thanks to Rainer Joswig↗ for some correction
about the history of the lisp machine's keyboards.
http://groups.google.com/group/comp.lang.lisp/msg/3b3dcdc52f507b02 .

Xah
http://xahlee.org/


Chris McMahan

unread,
Nov 4, 2008, 8:19:08 AM11/4/08
to
Richard Riley <riley...@gmail.com> writes:

My only issue with making the arrow keys the default setting is that it
forces me to take my hands away from the home keys. I don't like using
page-up and page-down for the same reason.

I'd have no objection as long as the standard cursor movement keys (C-n
C-p C-f and C-b) are also enabled.

- Chris

--
(. .)
=ooO=(_)=Ooo=====================================
Chris McMahan | first_init...@one.dot.net
=================================================

Richard Riley

unread,
Nov 4, 2008, 9:19:30 AM11/4/08
to
Chris McMahan <cmcm...@one.net> writes:

No one has suggested not keeping the existing bindings. But since the
arrow keys are indeed bound by default I think in emacs 22 etc then it's
more an argument of "whether" the keys should be bound :-; And of course
they should. Xavier seems to be more of the view "do not bind them"
since people will be "lazy". My cursor keys on a cherry kbd are to the
right of the right ctrl key. I use them all the time and consider myself
a reasonable emacs user. Every other app users them near enough. I dont
see that emacs should be an exception. Note that I dont agree with Xah
on everything but I do agree with Paul R above.

Xavier Maillard

unread,
Nov 3, 2008, 6:25:24 PM11/3/08
to Paul R, help-gn...@gnu.org, xah...@gmail.com

Dear Xavier,

Xavier> What's more, directional keys are one of the dumbest addition
Xavier> one could have thought off (in my opinion). The same apply for
Xavier> numerical keypad: what are they useful for exactly ? Is it that
Xavier> hard to press shift+& (for the azerty keyboard) to get a 1 ? Or
Xavier> press C-b to move point left ? I do not think so.

Xavier> The real reason that comes to mind is lazyness. People do not
Xavier> want to (take time to) learn how to do things, they want to go
Xavier> fast (even if they go fast wrongly). Keyboard (or typing more
Xavier> generally) is just an example, there are so many other applying
Xavier> here...

This sounds sooo much like overstated elitism. You may prefer to use C-b
and C-f and S-&, because you're so good and so l33t, this will never
change the point : beginners don't, period. Default settings must help
those people, who have not yet set their .emacs, to use and try the
software and see if they like it or not.

You do not agree; no need to tell me what I did not say. I just
speak of HABITS. There is no elitism (voluntary or not) in saying
that I do not use directional keys because a) I am not used to,
b) they are not located to an easy and accessible place and c)
because "oldies" are much more pleasant for me to type.

As told, "end of digression for me" (for real now). Anyway, we
won't agree since you are seing a flame/agression where there is
not.

Xavier Maillard

unread,
Nov 3, 2008, 6:25:26 PM11/3/08
to Richard Riley, riley...@gmail.com, help-gn...@gnu.org
Hi,

Xavier Maillard <x...@gnu.org> writes:

> Xavier Maillard <x...@gnu.org> writes:
>
> > Xavier> For your information, many old computers do not have
> > Xavier> Up/Down/Left/Right keys thus making this as a default won't work
> > Xavier> for them. I never use these key due to my habits. Therefor
> > Xavier> I strongly disagree with you on that point.
> >
> > Defaults are for newcomers to quickly get hands on the thing.
> >
> > I do not see why defaults should apply to newcomers, really.
> > Defaults must apply to the mass (either power users or newcomers).
> >
> > Xavier
>
> The mass have arrow keys. As do 99.99999999999999999% of all new comers.
>

> Yes I have it on my laptop but I never used them because they are
> located to an improbable and unpractical location.
>
> Xavier

With all due respect, the location of the arrow keys on one laptop seem
a dubious pivot for making decisions for a configurable base product
which is aimed at a wide and varied user base. The great majority have
arrow keys, the HW manufacturers built them in ( I haven't seen a keyboard
without them for years). To ignore them because of a minorities poorly
designed, antiquated or specialised HW seems somewhat silly.

Note: they are not easily accessible for *me*. It does not mean
they are badly designed or wrongly placed. I am pretty sure many
people use them and like that. I do not like to move my fingers
too much thus keeping them on the most important part: letters.

Are they the *best* things for hard core Emacs user? Possibly
not. Would a lot of users be confused if they did not work as common
sense dictates? Almost certainly.

That makes me thing the not so glorious past days of the
free software movement where creativity meant mimicry. Nevermind,
it is becoming even more OT.

Having said that, I'm sure you are not arguing against configuring
them.

Absolutely not.

Xah

unread,
Nov 5, 2008, 8:23:15 AM11/5/08
to
On Nov 3, 3:25 pm, Xavier Maillard <x...@gnu.org> wrote:
> Note: they are not easily accessible for *me*. It does not mean
> they are badly designed or wrongly placed. I am pretty sure many
> people use them and like that. I do not like to move my fingers
> too much thus keeping them on the most important part: letters.

i too, like to keep my hands on the main keyboard section as much as
possible.

Try these:

;; Single char cursor movement
(global-set-key (kbd "M-j") 'backward-char)
(global-set-key (kbd "M-l") 'forward-char)
(global-set-key (kbd "M-i") 'previous-line)
(global-set-key (kbd "M-k") 'next-line)

;; kick the habit
(global-unset-key (kbd "C-f")) ; forward-char
(global-unset-key (kbd "C-b")) ; backward-char
(global-unset-key (kbd "C-n")) ; next-line
(global-unset-key (kbd "C-p")) ; previous-line

Try these for a week. The first few days will be frustrating, as your
muscle memory hits the wrong keys. But i bet you won't ever go back.

Xah
http://xahlee.org/


Xavier Maillard

unread,
Nov 5, 2008, 2:25:18 AM11/5/08
to Xah, help-gn...@gnu.org
Hi Xha,

[what a long post ! :)]

On Nov 3, 3:25 am, Xavier Maillard <x...@gnu.org> wrote:
> in perhaps early 1990s, some keyboards do not have the arrow keys, or
> that some applications (in particular, terminal applications) do not
> necessarily support physical arrow keys by default.
>
> Today, i think more than 99.999% keyboards and applications support
> the physical arrows keys by default. The availablity of arrow keys i
> think is pretty much standard by mid 1990s, and their support in
> applications including term emulators is probably standard by 2000.
>
> At work, I still have oldies that still do not support these
> keys. What's more, directional keys are one of the dumbest
> addition one could have thought off (in my opinion). The same
> apply for numerical keypad: what are they useful for exactly ? Is
> it that hard to press shift+& (for the azerty keyboard) to get a
> 1 ? Or press C-b to move point left ? I do not think so.

The numerical keypad, and the physical cursor moving keys, are
technical superior to their counterparts in the main section of the
keyboard for many applications.

For example, if your job is data entry, the numerical keypad is much
more efficient to operate than the numbers on top row of the main
keys.

I agree with that but all the job positions consisting in typing
numerical data only, typing ZIP code is something that comes to
mind (at least here in France), is done on a very simplified
keypad with only numeric keys, <DEL> and <ENTER>. They would not
need anything but these keys.

In the same way, arrow keys, and the dedicated function keys for page
up/down, home/end keys, are superior to key combos in the main section
because they involve single key press with a clear label, and their
physical layout makes them more efficient to operate.

On a laptop, PG-UP/PG-DOWN or even Home/End are often combos to
type either. For example on my laptop, you have to press the Fn
key + directional keys if you want them. In that case, C-a/C-e
are a lot quicker to type than Fn+left or Fn+right. My laptop
keyboard is not an exception.

You can test these by, for example, try to type a quarter page of
phone numbers in a yellow book. (this is assuming that you do touch
type on the numerical keypads. (e.g. you are not a noob who refuse to
learn )) Similarly, you can try to play pacman by using the arrow
keys, as compared to using Alt+n Alt+p Alt+f Alt+b, and see which one
is more efficient.

The cool thing with Alt or Ctrl keys is this: they are doubled
(and I can even add other Alt/Ctrl keys by changing my dumpkey
setup). For example, here I have two Alt (r and l), three Ctrl
keys (one by default plus Caps Lock changed to Ctrl and Alt+Menu
which is also Ctrl for me). So if it comes that Alt-n or other is
hard to type with one Alt key, I could try to do it with the
other possibilities making such movement globally better than if
I had to look at my keyboard keys to search the directional keys.

Like Chris told, I do not like to leave the "home keys" when
typing. My fingers know where to go with few movements and by
trying to decrease the risk to get a RSI. That's what matter the
most for me. I do not type with my 10 fingers but only 6 and I
feel very comfortable like that.

[I will have to finish reading the rest of your post later :)]

Regards,

Xavier Maillard

unread,
Nov 5, 2008, 2:25:14 AM11/5/08
to Chris McMahan, help-gn...@gnu.org

Richard Riley <riley...@gmail.com> writes:

That is exactly what I wanted to mean in the first place. Gha, if
only my english was better ! Thank you for the sum up :)

Xah

unread,
Nov 6, 2008, 9:31:02 AM11/6/08
to
2008-11-06

On Nov 4, 11:25 pm, Xavier Maillard <x...@gnu.org> wrote:
> Like Chris told, I do not like to leave the "home keys" when
> typing. My fingers know where to go with few movements and by
> trying to decrease the risk to get a RSI. That's what matter the
> most for me. I do not type with my 10 fingers but only 6 and I
> feel very comfortable like that.

you don't touch type?

really, you should learn touch type.

it pisses me when programers don't touch type.

it is bizarre that these tech geekers get hotheaded in geeking forums
about what keybindings should or should not be.

like, i spent years thought about issues, such as modernization of
emacs's interface, its keyboard shortcuts, its terminology ... then
when i expressed these opinions thru detailed essays of few thousand
words each, with examples, photos, reference sources, a throng of tech
geekers think i'm a troll or my opinions are absolutely stupid ...

in the past year, i changed my newsgroup behavior so that i actually
try to reply to every message, then i came to realize thru
individualistic discussions, that they never used Windows, never used
Mac, which together are some 96% of world's computers emacs runs on,
but they insist that emacs UI should be this or that. They don't touch
type, but insist emacs keybindings should be this or that, none of
them actually have basic knowledge in the field of user interface or
human machine interface ... all you hear them say is basically “emacs
should not dumb down” (whatever that means) or “emacs is not
MicrosoftWord” (What the motherfuck is Microsoft?).

------------

y'know, it's weired, when u work in a day job, and sometimes you go
over with colleagues and noticed that they dont touch type, you try
very hard to pretend that you noticed nothing, and you wanted to laugh
out loud with gasps, but can't.

in fact, thinking about this from my personal experience of on and off
working in the IT industry as day jobs since 1995, _majority_ of
professional programers don't touch type. Thinking about it, it's
quite ridiculous.

A programer celebrity, Steve Yegge (author of js2 javascript mode),
recently pulled his windpipe on programers who don't know how to touch
type. Check it out:

http://steve-yegge.blogspot.com/2008/09/programmings-dirtiest-little-secret.html

that thing is what, 10 thousand words? LOL. He's more verbose than me.

Who are you Xavier Maillard? I assume you are a emacs developer, and i
think you probably used emacs for 5 or 10 or more years?

if you are so inclined, let's meet in Second Life. I'm Xah Toll
inworld.

Best,

Xah
http://xahlee.org/

Alan Mackenzie

unread,
Nov 6, 2008, 11:32:28 AM11/6/08
to Xah, help-gn...@gnu.org
A happy post-USA-election day to you, Xah!

On Thu, Nov 06, 2008 at 06:31:02AM -0800, Xah wrote:
> 2008-11-06

> On Nov 4, 11:25 pm, Xavier Maillard <x...@gnu.org> wrote:
> > Like Chris told, I do not like to leave the "home keys" when typing.
> > My fingers know where to go with few movements and by trying to
> > decrease the risk to get a RSI. That's what matter the most for me. I
> > do not type with my 10 fingers but only 6 and I feel very comfortable
> > like that.

> you don't touch type?

I think, by his description, he does. "Touch type" meaning "not having
to look at the keyboard to type".

> it pisses me when programers don't touch type.

... amongst quite a lot of other things which piss you off, too.

> it is bizarre that these tech geekers get hotheaded in geeking forums
> about what keybindings should or should not be.

:-)

> like, i spent years thought about issues, such as modernization of
> emacs's interface, its keyboard shortcuts, its terminology ... then
> when i expressed these opinions thru detailed essays of few thousand
> words each, with examples, photos, reference sources, a throng of tech
> geekers think i'm a troll or my opinions are absolutely stupid ...

... No! Who on earth would think that? ;-)

> in the past year, i changed my newsgroup behavior so that i actually
> try to reply to every message, then i came to realize thru
> individualistic discussions, that they never used Windows, never used
> Mac, which together are some 96% of world's computers emacs runs on,
> but they insist that emacs UI should be this or that. They don't touch
> type, but insist emacs keybindings should be this or that, none of
> them actually have basic knowledge in the field of user interface or

> human machine interface ... all you hear them say is basically ???emacs
> should not dumb down??? (whatever that means) or ???emacs is not
> MicrosoftWord??? (What the ... is Microsoft?).

Well, this "tech geeker", me (who is possibly your biggest fan amongst
all "tech geekers" ;-), does indeed touch type. He has also used various
versions of MS Windows extensively, and has dabbled on a Mac from time to
time.

> ------------

> y'know, it's weired, when u work in a day job, and sometimes you go
> over with colleagues and noticed that they dont touch type, you try
> very hard to pretend that you noticed nothing, and you wanted to laugh
> out loud with gasps, but can't.

Yes, it can make one feel so nauseatingly superior, can't it?

> in fact, thinking about this from my personal experience of on and off
> working in the IT industry as day jobs since 1995, _majority_ of
> professional programers don't touch type. Thinking about it, it's quite
> ridiculous.

Indeed. But somehow, they get their jobs done. Can't imagine how,
myself. Maybe hunt-and-peck typing isn't that bad after all.

> A programer celebrity, Steve Yegge (author of js2 javascript mode),
> recently pulled his windpipe on programers who don't know how to touch
> type. Check it out:

> http://steve-yegge.blogspot.com/2008/09/programmings-dirtiest-little-secret.html

> that thing is what, 10 thousand words? LOL. He's more verbose than me.

Good grief! I hadn't thought that possible, but you're right. ;-)

> Who are you Xavier Maillard? I assume you are a emacs developer, and i
> think you probably used emacs for 5 or 10 or more years?

Well, Xah, one thing to consider is that help-gn...@gnu.org is
moderated. It might just possibly be that Xavier is one of the
moderators. Should that be the case, it could be to your advantage to be
nice to him. In fact, it could be beneficial for you to keep your posts
moderate enough that intervention by a moderator isn't required. ;-)

> if you are so inclined, let's meet in Second Life. I'm Xah Toll
> inworld.

And you wonder why people think of you as a troll, with a mnemonic like
that. ;-)

> Best,

And the best to you too, sir!

> Xah

--
Alan Mackenzie (Nuremberg, Germany).


Andreas Politz

unread,
Nov 6, 2008, 11:51:55 AM11/6/08
to
Xavier Maillard wrote:
> Hi,
>
> Xavier Maillard wrote:
>
> > i think it is good to make this default. More intuitive for emacs
> > users.
> >
> > For your information, many old computers do not have
> > Up/Down/Left/Right keys thus making this as a default won't work
> > for them. I never use these key due to my habits. Therefor I
> > strongly disagree with you on that point.
> >
> > Xavier
>
> If you don't have or use the cursor keys, why would you mind
> what it's default bindings are ? That doesn't make any sense.
>
> Read again, it makes pefectly sense (hint: defaults apply to all
> users).
>
> Xavier

I did, it doesn't.

Xahs proposal:


>(add-hook 'w3m-mode-hook
> (lambda ()
> (define-key w3m-mode-map (kbd "<up>") 'previous-line) ; was w3m-
> previous-anchor. Use Shift+Tab.
> (define-key w3m-mode-map (kbd "<down>") 'next-line) ; was w3m-next-
> anchor. Use Tab.
> (define-key w3m-mode-map (kbd "<left>") 'backward-char) ; was w3m-
> view-previous-page. Use B.
> (define-key w3m-mode-map (kbd "<right>") 'forward-char) ; was w3m-
> view-this-url. Use Enter.
> ))
>

> i think it is good to make this default. More intuitive for emacs
> users.

The arrow keys are bound in the global map to previous-line/next-line/backward-char
/forward-char. This is the default binding. They are even mentioned in the
tutorial as an inferior way to move point.
Now, w3m rebinds this keys to some modespecific actions. It should be obvious,
that this is a problem. Would you like it if some mode binds C-n to push-button ?

But I don't want to stop you guys from debating, what ever it is you are debating.

-ap


Alan Mackenzie

unread,
Nov 6, 2008, 1:02:42 PM11/6/08
to Xah, help-gn...@gnu.org
Hi, yet again, Xah!

On Mon, Nov 03, 2008 at 05:48:14PM -0800, Xah wrote:

> For example, if your job is data entry, the numerical keypad is much
> more efficient to operate than the numbers on top row of the main keys.

If your job is programming, and you touch type, the digits on the top row
are much easier to use than the numeric keypad. Isn't it good we've got
this choice!

> In the same way, arrow keys, and the dedicated function keys for page
> up/down, home/end keys, are superior to key combos in the main section
> because they involve single key press with a clear label, and their
> physical layout makes them more efficient to operate.

If you spend your day working arrow keys, yes. If you're moving randomly
over text, making rapid amendments, the C-n, C-v, .... are better,
because you don't have to take your RH away from the home keys.

[ .... ]

> For example, one particular aspect of emacs, its system of keybindings,
> are in fact the worst possible.

You could make a far worse set of bindings. For example somebody
(Miles?) has written a set that "turns letters upside down". E.g., when
you type 'd' you get 'p', and vice versa.


> The Swapping of Control and Meta Modifiers

> Emacs's keyboard shortcuts is very inefficient. The primary cause is
> because, emacs's keyboard shortcuts are designed with a keyboard that
> practically has the Ctrl and Alt key positions swapped.
> Space-Cadet keyboard-2m

Maybe the swapping or arrangement of modifier keys isn't that big a deal.
It is better when they are optimally arranged, but maybe isn't very bad
when they are less well arranged. I don't know.

> The tragedy of the Control/(Alt/Meta) swap made emacs keyboard
> shortcuts very painful, and the frequent need to press the far-away
> Control key creates the Emacs Pinky syndrome. (Many emacs-using
> programer celebrities have injured their hands with emacs. (e.g.

> Richard Stallman???, Jamie Zawinski???, Ben Wing???), and emacs's Ctrl and


> Meta combinations are most cited as the major turnoff to potential
> users among programers)

There's also the possibility that these hackers injured themselves by
excessive typing, and would have fared as badly with any keyboard layout.

> (For more photos of Lisp Machine's keyboards (all have Control as
> primary), see: lisp_machine_symbolics_keyboard.jpg (photo by Rainer

> Joswig???. Used with permission), Symbolics keyboard PN 364000???,
> Symbolics keyboard PN 365407 Rev C??? by Peter Paine )

Heh! Peter Paine was my colleague ~25 years ago, when we were both at
Racal Norsk in England, building a Lisp Machine. Where is he now?


> The Choice Of Keys

> Outdated Commands

> A significant portion of emacs's major shortcuts (those with M-???key???
> or C-???key???) are mapped to commands that are almost never used today.


> Some of these occupies the most precious space (Home row with thumb:
> For example: M-s (center-line), M-j (indent-new-comment-line), M-k
> (kill-sentence)). Most programer who have used emacs for years never
> use these commands. For example:

> digit-argument, M-1 to M-9 R
> negative-argument, M-- R

> move-to-window-line, M-r R
> center-line, M-s
> transpose-words, M-t R
> tab-to-tab-stop, M-i

> M-g prefix, M-g R
> indent-new-comment-line, M-j R
> tmm-menubar, M-'

> zap-to-char, M-z
> back-to-indentation, M-m R
> tags-loop-continue, M-,
> find-tag, M-. R

I don't know about "most programmers", but I regularly use those commands
above marked with "R". Of the others, I can see that all but
`center-line' could be used a lot by other hackers. I can't see that
center-line is useful for much at all, except perhaps for preparing
invitations to parties. Presumably the early hackers did a lot of
partying.


> Difficult Keystrokes for Frequently Used Commands

> Some commands that are used by every emacs user many times every hour,
> such as Open (find-file; C-x C-f), Save (save-buffer; C-x C-s), Close

> (kill-buffer; C-x k), Next Window/Tab (next-buffer C-x ???) all require


> multiple keystrokes with the difficult Control key.

I don't think these commands are "frequently used". I use them several
times a session rather than many times. I've never used `next-buffer' in
my life (so having "???" in its binding isn't a problem for me). The
thing about all these file/buffer handling commands is that they are done
in a break for thinking, so if they are a bit awkward, it's not that
critical.

> Standard Name Emacs Command Name Keystroke
> Open find-file C-x C-f
> Save save-buffer C-x C-s
> Close kill-buffer C-x k

> Next Tab next-buffer C-x ???
> Previous Tab previous-buffer C-x ???


> No Employment of the Shift Key

> For historical reasons, emacs does not use any keybindings involving

> the Shift with a letter. (e.g. there's no ???Meta Shift a???, or ???Control
> Shift a???) This is so because in early computing environment, Ctrl+Shift
> +???letter??? cannot be distinguished from the non-Shift version, due to a
> practical combination of ASCII???, Computer terminal???, telnet???.

Even today, these combinations are only usable on some of Emacs's target
environments, so it's not a brilliant idea to make standard bindings out
of them. However, that leaves a massive amount of space for personal key
bindings. They're awkward to type, though.

> Using the Shift key as a reverse operation is very easy to remember,
> and doesn't take another precious shortcut letter. By not using the
> Shift key, commands with a logical reverse operation necessarily have
> to find other key space, and overall making the shortcut set more
> difficult to remember, or scattered, or more difficult to press.

Emacs tends to use the C-u prefix for reversal.


> A Flaw in Keybinding Policy

> Any major software, maintains a guide for the developers about the
> choices of keyboard shortcuts, so that the shortcuts will be
> consistent. Emacs has this in its Emacs Lisp manual: Elisp Manual: Key-
> Binding-Conventions.

> This guide, indicates that the only key space reserved for users to
> define, are the function keys F5 to F9, and key stroke sequence
> starting with Ctrl+c followed by a single letter key.

I agree with you here. I don't think the function keys, with or without
modifiers, should be standardly bound to any commands,.

> This is a severe restraint to the utility of customized shortcuts. F5
> to F9 are only 6 keys.

Really? I disagree with you there.

> The key sequence starting with C-c followed by a letter, is a difficult
> sequence to execute, and there are only 26 spaces there.

Or 52, if you are willing to use <shift>.

> The function keys, F1 to F12, are very good candidates for user
> defined shortcut space, similarly for the digit key shortcuts, 0 to 9.
> These keys can be used with any combination of Control, Meta, Shift.
> For example, a user might define them to insert various templates,
> headers/footers, a system of customized HTML/XML tags. Or, she might
> assign them to various special emacs modes such as dired, shell, ftp,
> email, calendar, calc, *scratch*, make-frame-command (Open a new
> window), insert signature.

Lots of people do use all the function keys for their own bindings.
Including me.

Rupert Swarbrick

unread,
Nov 6, 2008, 3:02:37 PM11/6/08
to
Alan Mackenzie <a...@muc.de> writes:

>> For historical reasons, emacs does not use any keybindings involving
>> the Shift with a letter. (e.g. there's no ???Meta Shift a???, or ???Control
>> Shift a???) This is so because in early computing environment, Ctrl+Shift
>> +???letter??? cannot be distinguished from the non-Shift version, due to a
>> practical combination of ASCII???, Computer terminal???, telnet???.
>
> Even today, these combinations are only usable on some of Emacs's target
> environments, so it's not a brilliant idea to make standard bindings out
> of them. However, that leaves a massive amount of space for personal key
> bindings. They're awkward to type, though.
>

Indeed. I'm reading (and writing) this using gnus. On emacs. On a
machine about 8 miles away. Using ssh with cygwin (eugh). Because of
some weird problems with cygwin deleting frames if you accidentally
mouse-2 on them (!), I'm using the new multiheaded emacs and emacsclient
-nw.

Anyway, stuff Ctrl-Shift-blah. For me, Ctrl-h is indistinguishable from
DEL!

Rupert

Giorgos Keramidas

unread,
Nov 6, 2008, 1:12:25 PM11/6/08
to
On Thu, 6 Nov 2008 06:31:02 -0800 (PST), Xah <xah...@gmail.com> wrote:
> in the past year, i changed my newsgroup behavior so that i actually
> try to reply to every message, then i came to realize thru
> individualistic discussions, that they never used Windows, never used
> Mac, which together are some 96% of world's computers emacs runs on,
> but they insist that emacs UI should be this or that.

96% of statistics are made up. I don't think Emacs has so _many_
Windows users. I know that a lot of people who use Emacs in other
platforms like the Windows ports of Emacs too, but I highly doubt *all*
the Windows users know about Emacs :)

Xah

unread,
Nov 6, 2008, 8:01:12 PM11/6/08
to
On Nov 6, 8:32 am, Alan Mackenzie <a...@muc.de> wrote:
> A happy post-USA-election day to you, Xah!

it is fantastic that Obama won!

> I think, by his description, he does. "Touch type" meaning "not having
> to look at the keyboard to type".

using 6 fingers instead 10 is not considered touch typing.

http://en.wikipedia.org/wiki/Touch_typing

> Well, this "tech geeker", me (who is possibly your biggest fan amongst
> all "tech geekers" ;-), does indeed touch type. He has also used various
> versions of MS Windows extensively, and has dabbled on a Mac from time to
> time.

Recently you asked me a bunch of questions on Aquamac in
“comp.lang.lisp”. I was surprised you didn't know the answers for
someone who insists on some opinions about emacs UI.
Aquamacs is relevant because it modernize emacs wholesale and it is
probably most popular emacs on the Mac platform.

Xah
http://xahlee.org/


Xah

unread,
Nov 6, 2008, 8:22:33 PM11/6/08
to
On Nov 6, 10:12 am, Giorgos Keramidas <keram...@ceid.upatras.gr>
wrote:

> On Thu, 6 Nov 2008 06:31:02 -0800 (PST), Xah <xah...@gmail.com> wrote:
> > in the past year, i changed my newsgroup behavior so that i actually
> > try to reply to every message, then i came to realize thru
> > individualistic discussions, that they never used Windows, never used
> > Mac, which together are some 96% of world's computers emacs runs on,
> > but they insist that emacs UI should be this or that.
>
> 96% of statistics are made up.

by ur mom?

> I don't think Emacs has so _many_ Windows users.

How many?

> I know that a lot of people who use Emacs in other
> platforms like the Windows ports of Emacs too, but I highly doubt *all*
> the Windows users know about Emacs :)

on the whole, do u have a point?

Xah
http://xahlee.org/


Xah

unread,
Nov 6, 2008, 9:02:26 PM11/6/08
to
Dear Alan idiot,

Xah wrote:
> > For example, if your job is data entry, the numerical keypad is much
> > more efficient to operate than the numbers on top row of the main keys.

Alan Mackenzie wrote:
> If your job is programming, and you touch type, the digits on the top row
> are much easier to use than the numeric keypad. Isn't it good we've got
> this choice!

the argument, was about whether the numerical keypad was useless. Here
i quote Xavier Maillard:

Xavier wrote:
«At work, I still have oldies that still do not support these keys.


What's more, directional keys are one of the dumbest addition one
could have thought off (in my opinion). The same apply for numerical
keypad: what are they useful for exactly ? Is it that hard to press
shift+& (for the azerty keyboard) to get a 1 ? Or press C-b to move

point left ? I do not think so.»

He, in short, Xavier are idiotic to the degree to claim that the
numerical keypads or the physical arrow keys are useless or extremely
stupid design.

I responded by explaining their applications. Their efficiency for
data entry applications when compared to the number keys on the main
keyboard.

I'm sorry for calling you and Xavier idiots. Perhaps it is insulting,
but sometimes that's the best way to make people understand. Most tech
geekers are idiots, when they express opinions other than technical
details of programing languages.

please let me know if you'd like me to respond to more parts of your
message. I might give it a swirl. I get annoyed because tech geekers
do their bone picking, then other tech geekers sees the part and
pitches in. Then pretty soon the whole thread is about tech geekers
padding each other's back, and 1+1 seems to be something other than 2.

For example, in other part your post, you said something idiotic about
the use of Shift key, then Rupert Swarbrick put in 60 words post that
effectively says “yeah, i still use emacs thru telnet too!!!” Can you
imagine, soon other tech geeker will chime in and insist emacs is
still used thru telnet? and soon more tech geeker will insist that
Emacs is not technically a Microsoft Word?

O, btw, have you decided on the $50 paypal sincerity contest? I mean,
about a month ago, i complained that we had too many debates that went
no where in the past year, so perhaps we could pitch in $50 real money
so that we have something real to backup our mouths. You didn't
respond. But now you are all over me with long winded posts. Is this
your sense of tea party?

Xah
http://xahlee.org/

Giorgos Keramidas

unread,
Nov 6, 2008, 10:50:51 PM11/6/08
to
On Thu, 6 Nov 2008 17:22:33 -0800 (PST), Xah <xah...@gmail.com> wrote:
>On Nov 6, 10:12 am, Giorgos Keramidas <keram...@ceid.upatras.gr> wrote:
>>On Thu, 6 Nov 2008 06:31:02 -0800 (PST), Xah <xah...@gmail.com> wrote:
>>> in the past year, i changed my newsgroup behavior so that i actually
>>> try to reply to every message, then i came to realize thru
>>> individualistic discussions, that they never used Windows, never used
>>> Mac, which together are some 96% of world's computers emacs runs on,
>>> but they insist that emacs UI should be this or that.
>>
>> 96% of statistics are made up.
>
> by ur mom?

I guess she has her own share of false statistics, like me, you and
everyone else :)

>> I don't think Emacs has so _many_ Windows users.
>
> How many?

It wasn't me who hinted at a 96% percentage of the world's computers, so
asking _me_ to provide the number is a bit unrealistic.

>> I know that a lot of people who use Emacs in other platforms like the
>> Windows ports of Emacs too, but I highly doubt *all* the Windows
>> users know about Emacs :)
>
> on the whole, do u have a point?

Yes. Please don't use made up numbers to insult the people who designed
the UI of Emacs. Some of them have used Windows too. For a long time.
Long enough to get down and actually *port* Emacs on the platform.

Xah

unread,
Nov 7, 2008, 12:42:21 AM11/7/08
to
hi dork Giorgos Keramidas,

the mention of Mac and Windows, is to give a context for the
expression that tech geeking morons who never used 95% of the world's
computers yet insist on how emacs's UI should or should not be.

It is not, for example, about ur mom.

Xah
http://xahlee.org/

Kevin Rodgers

unread,
Nov 7, 2008, 1:24:06 AM11/7/08
to help-gn...@gnu.org
Alan Mackenzie wrote:
> Presumably the early hackers did a lot of
> partying.

Yeah, baby!

--
Kevin Rodgers
Denver, Colorado, USA

Giorgos Keramidas

unread,
Nov 7, 2008, 2:48:04 AM11/7/08
to
On Thu, 6 Nov 2008 21:42:21 -0800 (PST), Xah <xah...@gmail.com> wrote:
> hi dork Giorgos Keramidas,
>
> the mention of Mac and Windows, is to give a context for the
> expression that tech geeking morons who never used 95% of the world's
> computers yet insist on how emacs's UI should or should not be.
>
> It is not, for example, about ur mom.

Right. Well, that makes things more sensible (not).

I fail to see where my mom's use of Windows (yes, she does use Windows)
has anything to do with the UI of Emacs, but I can assure you that the
UI is not her main difficulty when it comes to Emacs.

Localized menus and a fully translated Greek manual would be more
important to her and all the people who speak and write Greek, but have
not had the chance to read English. Fixing *that* would be a much more
important thing than agonizing about the key bindings if you ask me!


Xah

unread,
Nov 7, 2008, 3:07:40 AM11/7/08
to
On Nov 6, 11:48 pm, Giorgos Keramidas <keram...@ceid.upatras.gr>
wrote:

well not if u ask me. Fixing her language skill would be greater
benefit to her life.

However, what's this with to do with emacs UI? your mom said?

Xah
http://xahlee.org/


Alan Mackenzie

unread,
Nov 7, 2008, 5:04:24 AM11/7/08
to Xah, help-gn...@gnu.org
Morning, Xah!

On Thu, Nov 06, 2008 at 05:01:12PM -0800, Xah wrote:
> On Nov 6, 8:32 am, Alan Mackenzie <a...@muc.de> wrote:
> > A happy post-USA-election day to you, Xah!

> it is fantastic that Obama won!

And yesterday in Scotland, the Labour party, the party of British
government, held on to their parliamentary seat for Glenrothes, against
the strong expectation that the Scottish National Party, the party of
Scottish government, would win it.

> > I think, by his description, he does. "Touch type" meaning "not
> > having to look at the keyboard to type".

> using 6 fingers instead 10 is not considered touch typing.

"Is not considered" :-). I don't think we should be so concerned to
divide people (or even things) into categories. Pluto is just the same
lump of rock and ice it always was, whether we call it a planet or not.

Of course, there's also the possibility that the man only has 6 usable
fingers. It works for him.

> > Well, this "tech geeker", me (who is possibly your biggest fan
> > amongst all "tech geekers" ;-), does indeed touch type. He has also
> > used various versions of MS Windows extensively, and has dabbled on a
> > Mac from time to time.

> Recently you asked me a bunch of questions on Aquamac in

> ???comp.lang.lisp???. I was surprised you didn't know the answers for


> someone who insists on some opinions about emacs UI. Aquamacs is
> relevant because it modernize emacs wholesale and it is probably most
> popular emacs on the Mac platform.

I don't know any Mac Emacs users, so I couldn't comment on its
popularity.

But we've had this discussion several times. Modern isn't necessarily
better. Modern is easier for newbies familiar with other programs to
learn, but there's no evidence that, once learnt, it's any better than
the classic Emacs UI. Do you address this matter anywhere in your online
essays? My own experience is that Emacs's classic UI is much better.
One reason to believe Emacs UI should be superior is that it was
developed by the people who use it, for their own use.

Eli Zaretskii

unread,
Nov 7, 2008, 5:24:28 AM11/7/08
to help-gn...@gnu.org
> From: Xah <xah...@gmail.com>
> Date: Thu, 6 Nov 2008 18:02:26 -0800 (PST)
>
> Dear Alan idiot,

> From: Xah <xah...@gmail.com>
> Date: Thu, 6 Nov 2008 21:42:21 -0800 (PST)
>
> hi dork Giorgos Keramidas,

Ts-ts-ts, just when I thought that Xah can be a reasonably useful
member of the community by posting some _helpful_ articles, for a
change...


Paul R

unread,
Nov 7, 2008, 5:29:50 AM11/7/08
to Alan Mackenzie, help-gn...@gnu.org, Xah
Hello,

> > A happy post-USA-election day to you, Xah!

>> it is fantastic that Obama won!

Alan> And yesterday in Scotland, the Labour party, the party of British
Alan> government, held on to their parliamentary seat for Glenrothes,
Alan> against the strong expectation that the Scottish National Party,
Alan> the party of Scottish government, would win it.

And french president, currently European Union president for 2 months
more, recently gave a speech in which he said that he does not want to
leave this european seat when time comes (IIRC, Tchek Republic is
supposed to take over after France in january ). He argued that given
the "current crisis", the european presidency ought to be strong, very
wise and skilled, hence he is the only one able to do the job (still
according to him). Cock really is a good emblem for our country, as it
is the only known animal that keeps singing even with both foot in his
own poo :)

Alan> But we've had this discussion several times. Modern isn't
Alan> necessarily better. Modern is easier for newbies familiar with
Alan> other programs to learn, but there's no evidence that, once
Alan> learnt, it's any better than the classic Emacs UI. Do you address
Alan> this matter anywhere in your online essays? My own experience is
Alan> that Emacs's classic UI is much better. One reason to believe
Alan> Emacs UI should be superior is that it was developed by the people
Alan> who use it, for their own use.

Although I agree with that, I think it is important to keep in mind that
emacs frighten a lot of people when they first try it, and a lot of
those people may drop it forever because of this first impression.
I think newcomers are young and have time to realize what bindings are
convenients or not in everyday use, and emacs should not impose, by
default, a map that makes it practicaly unusable to anybody coming from
the "CUA world". Yes, they can learn. No, they don't want to learn
before trying, and I can understand that.


--
Paul


Alan Mackenzie

unread,
Nov 7, 2008, 5:54:29 AM11/7/08
to Xah, help-gn...@gnu.org
Dear Xah genius,

On Thu, Nov 06, 2008 at 06:02:26PM -0800, Xah wrote:
> Dear Alan idiot,

Hey, just what I need after getting up in the morning. ;-(

> the argument, was about whether the numerical keypad was useless. Here
> i quote Xavier Maillard:

> Xavier wrote:
> «At work, I still have oldies that still do not support these keys.
> What's more, directional keys are one of the dumbest addition one
> could have thought off (in my opinion). The same apply for numerical
> keypad: what are they useful for exactly ? Is it that hard to press
> shift+& (for the azerty keyboard) to get a 1 ? Or press C-b to move
> point left ? I do not think so.»

> He, in short, Xavier are idiotic to the degree to claim that the
> numerical keypads or the physical arrow keys are useless or extremely
> stupid design.

Not at all. He's merely saying, in a somewhat polemic way, that he
doesn't find them useful himself, and is mystified that other people do.
That doesn't make him an idiot.

[ .... ]

> I'm sorry for calling you and Xavier idiots. Perhaps it is insulting,
> but sometimes that's the best way to make people understand.

If you are sorry, why do you do it? It is indeed insulting, and it is
NEVER the best way to persuade people of anything. The effect on me is
that I take you a little less seriously that I otherwise would, which is
surely not what you want. A tip: get hold of a copy of Dale Carnegie's
"How to Win Friends and Influence People" (yes, it is a real book, first
published last century), read it and do what it says.

> Most tech geekers are idiots, when they express opinions other than
> technical details of programing languages.

Most? Not all? Am I an idiot when I say what I think about equal
temperament tuning, or how best to learn to do "chops" with three
juggling clubs, or why assuming the axiom of choice is a poor choice? If
by "tech geeker" you meant somebody whose only expertise is in
programming, you might be right, but how many of these are there really?
RMS plays the flute, for example. ESR shoots guns, and probably would
love to kill somebody. ;-)

> please let me know if you'd like me to respond to more parts of your
> message. I might give it a swirl.

I'm always delighted to read your responses.

> For example, in other part your post, you said something idiotic about
> the use of Shift key, then Rupert Swarbrick put in 60 words post that

> effectively says ???yeah, i still use emacs thru telnet too!!!??? Can you


> imagine, soon other tech geeker will chime in and insist emacs is
> still used thru telnet? and soon more tech geeker will insist that
> Emacs is not technically a Microsoft Word?

:-) What I said was, I think, true. People do use Emacs over comms
lines. Emacs developers actively resist the "tyranny of the majority".

> O, btw, have you decided on the $50 paypal sincerity contest? I mean,
> about a month ago, i complained that we had too many debates that went

> no where in the past year, so perhaps we could pitch in $50 real money,
> ....

It's quite some time since USA dollars were real money. .... ;-)

> ....., so that we have something real to backup our mouths. You didn't


> respond. But now you are all over me with long winded posts. Is this
> your sense of tea party?

Well, the FSF's offices are in Boston, so maybe that's not so
inappropriate. ;-)

But Xah Lee moaning about long winded posts? Wow!

Xah

unread,
Nov 7, 2008, 12:43:23 PM11/7/08
to
Alan Mackenzie wrote:

> > > I think, by his description, he does. "Touch type" meaning "not
> > > having to look at the keyboard to type".
> > using 6 fingers instead 10 is not considered touch typing.
>
> "Is not considered" :-). I don't think we should be so concerned to
> divide people (or even things) into categories. Pluto is just the same
> lump of rock and ice it always was, whether we call it a planet or not.

Dear Alan moron, nor is this about skin color. If you are a moron,
dressing well doesn't change the fact,

> I don't know any Mac Emacs users, so I couldn't comment on its
> popularity.

the question is not about whether you know or don't know mac emacs
users. It's about you lacking requisite knowledge yet insist on your
opinion about the subject.

> But we've had this discussion several times. Modern isn't necessarily
> better. Modern is easier for newbies familiar with other programs to
> learn, but there's no evidence that, once learnt, it's any better than
> the classic Emacs UI. Do you address this matter anywhere in your online
> essays? My own experience is that Emacs's classic UI is much better.
> One reason to believe Emacs UI should be superior is that it was
> developed by the people who use it, for their own use.

yes it's addressed in my essay, under the FAQ section. In fact, this
has been addressed so many times, just about every few months. It's
quite amazing that some thoughts just never registers in tech geeker'
brain.

See:
The Modernization of Emacs
http://xahlee.org/emacs/modernization.html

The FAQ section starting near the middle of page. Here's a excerpt of
the section.

Q: Emacs's ways are technically superior. It should not change.

Emac's user interface, when compared to modern software application's
user interface, is complex and unusual, however, there's no basis
whatsoever of it being actually a superior design with regards to any
sensible metrics. (in fact, much of emacs's user interface are due to
historical reasons. That is, how computers are in 1980s.)

For example, let's consider emacs's system of keyboard shortcuts. For
a keyboard shortcut system, we might judge its quality based on
several aspects. Here are some examples of consideration:

* Is it easy to learn? (is it familiar to most people? Is it easy
to remember?)
* Is it ergonomic? (Are most frequently used commands's keyboard
shortcuts easy to type? Are more frequently used commands have easier
to type shortcuts than less frequently used commands?)
* Are most frequently used commands all have a keyboard shortcut?
* Is the shortcut system somehow consistent and extensible?

Emacs's keyboard shortcuts system, is good only with respect to the
last item. Emacs keyboard shortcuts are perhaps one of the most
difficult to learn among software, and is also one of the most
difficult to remember. The worst aspect of emacs's keyboard shortcuts,
is that it is ergonomically painful. (Many emacs-using programer


celebrities have injured their hands with emacs. (e.g. Richard

Stallman↗, Jamie Zawinski↗, Ben Wing↗), and emacs's Ctrl and Meta
combinations are most cited as the major turn-off to potential users
among programers)

Computer keyboard is a hardware interface, and the mapping of commands
to the key press combinations can be considered from a Operation
Research (ergonomic) point of view. The keyboard hardware itself can
be designed with consideration of ergonomics↗ (that's why we have
split and curved keyboards), but consideration of what functions to
map to what key presses is also non-trivial if the software has large
number of functions, or if the software is mission critical, or the
software is used for repetitive, long durations of human-machine
interaction (such as data-entry, programing, writing). Think of it
this way: consider a airplane cockpit, filled with knobs, dials,
buttons, and switches. Now, if your job is to map the airplane control
functions to these switches, what are the issues to consider?

If we take careful consideration on creating a keyboard shortcut
system for emacs, it is not difficult to create a system that is
superior in some pure technical sense than the emacs's shortcut
system.

For some detail, see: Why Emacs's Keyboard Shortcuts Are Painful.

Aside from keyboard shortcuts system, other user interface aspects of
emacs are also questionable. For example, one major aspect of emacs
operation is that it uses a single window for multiple purposes and
files. Emacs is this way not because of a design decision, but rather
due to historical reasons. Computer resources in the 1980s are very
limited. When emacs is around, graphical system of showing “windows”
is not practically available, and the emacs's method of using the
screen (the monochrome text-only monitor) for presenting multiple
tasks (“buffers”) is actually a very advanced user interface design
not available in software of that era. When graphical systems becomes
practical in the 1990s, drawing a window still takes a lot memory, and
opening multiple windows is slow and impractical.

Modern software interface (say, post 2000) usually uses one window per
file (or task), and or show tabs if multiple tasks are represented in
a single window. However, emacs's buffer system doesn't provide the
tabs visual clue. Compared to the modern standard of tabbed window,
emacs's buffer interface is inferior because it is less intuitive.
Arguably, emacs's operation methods may be more efficient for expert
users. 20 years ago, efficiency for expert users may out weight the
ease of use for majority of average users. But in today computing era,
computers are standard tools in every household, efficiency and ease
of use for general users is as important for professional users. Even
for professional users, it is openly questionable that emacs's ways of
operation induced by its default user interface allows more efficient
operation than a user interface based on modern software conventions.
(this can be certified by having 2 team of programmers roughly equally
experienced or skilled in using emacs. One team use Emacs with default
UI setup, the other use a emacs with modernized interface (such as
Mac's Aquamacs), then compare their efficiency in finishing a set of
coding tasks.)

Note: we are not disputing the general power, flexibility, and
qualities of emacs. Emacs, with a powerful embedded language lisp, and
consequently embodies many software applications other than text
editing (email, ftp, dired, calc, ...etc), has induced certain system
of user interface that is all consistent and unique in comparison to
modern software applications. We do not advocate that this is bad.
Specifically, we only propose a very few trivial items for interface
or documentation changes as listed in this article. Most are simply
turning on some features by feault and or changing some terminologies
in the documentation. They have no bearings on how emacs operate in
general.

Xah
http://xahlee.org/


Xah

unread,
Nov 7, 2008, 3:10:16 PM11/7/08
to
Dear Alan MORON,

> Not at all. He's merely saying, in a somewhat polemic way, that he
> doesn't find them useful himself, and is mystified that other people do.
> That doesn't make him an idiot.

the question is not about whether he is a idiot. If u r not a idiot,
you should know.

the argument here, is about his idiotic, perhaps careless, claim that
the numerical keypad and arrow keys are useless; a opinion made to
support his view that w3m mode should not have the arrows keys to move
cursor.

my response, is to point out the degree of his idiocy in his wanton
claim about keyboard design, by for example, pointed out data entry
industry, the field of ergonomics, and with explicit example that one
can test oneself on about how the numerical keypad and the arrow keys
are more efficient by significant margins than the number row keys or
Ctrl+fbnp key combo.

You, in regard to this section of the debate, are a moron, first, by
claiming that the number row is actually more efficient than the
numbers on numerical keypad, totally ignoring the context. When i
pointed out your moronicity by your ignorance of context either
intentiaonally or unintentionally, you are a moron again, by claiming
that 6-finger typing is also touch-typing.

The above sequence of events can be seen in google groups, here:
http://groups.google.com/group/gnu.emacs.help/browse_frm/thread/7c08121e215fd383
i hope nobody remove their messages.

The message that started this sequence of debate, is this:
http://groups.google.com/group/gnu.emacs.help/msg/daf6748a5f24ddf8

anyone is welcome to verify my interpretaation of this sequence of
debate.

Xah
http://xahlee.org/

Xah

unread,
Nov 7, 2008, 3:12:05 PM11/7/08
to
> [ .... ]
>
> > I'm sorry for calling you and Xavier idiots. Perhaps it is insulting,
> > but sometimes that's the best way to make people understand.
>
> If you are sorry, why do you do it? It is indeed insulting, and it is
> NEVER the best way to persuade people of anything. The effect on me is
> that I take you a little less seriously that I otherwise would, which is
> surely not what you want. A tip: get hold of a copy of Dale Carnegie's
> "How to Win Friends and Influence People" (yes, it is a real book, first
> published last century), read it and do what it says.

Alan, you are a idiot.

For your information, i have a life-long interest in subject related
to brain washing, mind control, etc related issues. In particular, the
Dale Carnegie book you mentioned i read in the early 1990s.

With regard to these issues, i recommend you read:

• What Desires Are Politically Important?
http://xahlee.org/Periodic_dosage_dir/_p2/russell-lecture.html

the above essay gives you a tour of importance of political decisions
with desire.

for example, we all have opinions and discuss it seriously about emacs
issues. It seems we are all so reasonable. However, do you know why we
do it? No, it's not about what UI really should be, or how each of you
are so fucking cark and care about emacs's health, but it's more about
how you are a lonely guy and have nothing to do.

• Scientology and Falun Gong
http://xahlee.org/Periodic_dosage_dir/t2/scientology_falun_gong.html

the above essay gives you a glimpse of my understanding and views
about mind controll and such sects.

• Western-God-Believing-Sect's scripture
http://xahlee.org/Periodic_dosage_dir/t1/scripture.html

the above essay gives you some insights about western's god-beliving
sect's mind controlling methodologies.

• 斬邪留正詩 (Kill the Vicious and Keep the Righteous poem)
http://xahlee.org/Periodic_dosage_dir/sanga_pemci/taiping.html

the above is a poem by a jesus related cult leader, which caused 20
million deaths in China.

maybe you are a juvenile who are still in the book citing stage. Like:
“A: you should read x! B: x is outdated. You should read y! A: no, but
z says y is wrong!”

well, since you quote Dale, perhaps i can recommend some books for you
of similar vein.

Moron, please read:

• Influence: the psychology of persuasion. By Robert Ciadini.

• Intimate Behaviour. By Desmond Morris.

• Basic Economics. By Thomas Sowell.

• Machiavelli's The Prince, and recently “The 48 Laws of Power”.

Btw, perhaps you are wondering, since i've read Dale's book, how come
i don't behave as the book indicated?

Maybe, i don't really care to befriend you? Maybe, the book is moronic
after all? Can you now see some of the issues? Maybe, Dale is a moron
of the first order, after all?

i mean, wow, there's a book about how to befriend people! and is
widely popular! How come it is not taught in humanities department,
moron Alan? I mean, it could totally replace psychology, or the
department of psychology about human relations. Like, wow, all of a
sudden i can make all my enemies my friends. There are military
applications too. Bang, you are now my friend!

maybe flag burners and vietname war critics should read Dale. They'd
be so loved. Maybe George motherfucking Bush should read Dale. He'd so
be my friend. Maybe Gandi or US American moron's hero post-the-fact
Martin L King should read Dale too. Maybe Richard Stallman should read
Dale, he'd have less enemies.

Xah
http://xahlee.org/


Xah

unread,
Nov 7, 2008, 3:17:49 PM11/7/08
to
Alan Mackenzie wrote:
> :-) What I said was, I think, true. People do use Emacs over comms
> lines. Emacs developers actively resist the "tyranny of the majority".

Yes. 1+1==2, is true. Therefore you should shut the fuck up. 1+1 is
just true. Try it on your calculator. You can even call “calc” in
emacs. Here's what to do: type “Alt+x calc”, then type “1 Enter 1
Enter +”, then you'll see “2”. So, perhaps you should shut the fuck up
after all. Further, emacs is really not Microsoft word, nor is it even
a product by Microsoft. Your opinion turns out all wrong.

O, sorry i forgot, did u say emacs is used over comms lines? Is there
a context for this statement? Do you actually have a point?

O, actually, let me help you make your point. Like this: “Emacs is
still frequently used over terminals, therefore it should not use
Shift key as part of its shortcuts”.

Is that what you are trying to say? If so, let me know. I'll help you
understand what a moron you are. I mean it. I mean, that you and most
tech geekers, are so stupid, so lack of critical thinking abilities,
that you may actually not understand simple things, and think the
above line is quite reasonable. So, i'm saying, it is totally not
unexpected that you would seem nothing wrong with the above claim
about Shift key and telnet. I'm saying, that i'm willing to help you
understand what's wrong about it.

O, wait a minute. You also mentioned that emacs resist the tyranny of
the majority. So, we are back to the line about “emacs is not
Microsoft”, right?

Q: Why should emacs want to be popular and why should emacs change to
conform the majority?

This attitude has plagued unix and computer geekers for decades. In
the early 1990s (DOS and unix), tech geekers would sneer at graphical
menus and mouse, with hordes of reasons how pure text interface, the
command line, and or keyboard operations are sufficient and superior
than graphical user interface or using a mouse. This seems ridiculous
today, but such voices are commonly seen all over newsgroups. (Since
about 1998, linuxes are in a frenzied race to copy whole-sale of
Microsoft Windows's user interface ( KDE↗, GNOME↗, Lindows↗ ) trying
to make itself easy-to-use.)

We like emacs, we want emacs to be used by more people, we like more
elisp programers. By improving emacs, as a side effect emacs will also
be more popular. It is not a popularity contest.

-----------

what is the motherfuck is your problem with the majority or
popularity? I mean, what motherfuck is wrong with u?

you are a human animal, arn't you? and you know, there are 6+ billions
of human animals. So, you are part of the majority. Perhaps you should
cease to be a human animal to avoid being a majority?

you wear shoes right? majority of human animals wear shoes. So,
perhaps you can go barefoot so that you can get a sense of superiority
by not majority?

O, most people today believe earth is not flat. I'm sure Microsofties
believes that too. Perhaps emacs users should join flat-earthers so
it's not majority?

> Alan Mackenzie (Nuremberg, Germany).

who the fuck r u anyway? care to enlighten us with perhaps your
resume? what emacs packages have u done? how long have u been a emacs
dev? what's your field of expertise? how old are u? 50? 60?

my life and cock size is a open book. Perhaps you should tell us about
yourself, since we have had many arguments, and consider that you are
my fan, since yourself said.

Xah
http://xahlee.org/


Alan Mackenzie

unread,
Nov 7, 2008, 6:51:56 PM11/7/08
to Paul R, help-gn...@gnu.org
Hi, Paul!

On Fri, Nov 07, 2008 at 11:29:50AM +0100, Paul R wrote:
> Hello,

> And french president, currently European Union president for 2 months
> more, recently gave a speech in which he said that he does not want to
> leave this european seat when time comes (IIRC, Tchek Republic is
> supposed to take over after France in january ). He argued that given
> the "current crisis", the european presidency ought to be strong, very
> wise and skilled, hence he is the only one able to do the job (still
> according to him). Cock really is a good emblem for our country, as it
> is the only known animal that keeps singing even with both foot in his
> own poo :)

Ah, yes, politicians! I suspect Monsieur S. will be told that, come
Hogmanay, his time's up.

> Alan> But we've had this discussion several times. Modern isn't
> Alan> necessarily better. Modern is easier for newbies familiar with
> Alan> other programs to learn, but there's no evidence that, once
> Alan> learnt, it's any better than the classic Emacs UI. Do you address
> Alan> this matter anywhere in your online essays? My own experience is
> Alan> that Emacs's classic UI is much better. One reason to believe
> Alan> Emacs UI should be superior is that it was developed by the people
> Alan> who use it, for their own use.

> Although I agree with that, I think it is important to keep in mind
> that emacs frighten a lot of people when they first try it, and a lot
> of those people may drop it forever because of this first impression.
> I think newcomers are young and have time to realize what bindings are
> convenients or not in everyday use, and emacs should not impose, by
> default, a map that makes it practicaly unusable to anybody coming from
> the "CUA world". Yes, they can learn. No, they don't want to learn
> before trying, and I can understand that.

Yes, this is a difficult problem. The other side is, that if you don't
encourage newbies to try the classic Emacs keybindings, they're going to
be stuck at the CUA level for ever, hence they'll miss out. This has
been discussed on the Emacs development mailing list at great length, and
there has been great passion displayed on both sides. ;-) I don't think
there is a good solution to the problem. FWIW, Transient Mark Mode is
going to be enabled by default in Emacs 23.

My part solution is to have several default Emacs "personalities" - or
perhaps better called "Emacsicalities" - perhaps 2 or 3 of them. Each
one would be implemented by a Lisp file setting certain defaults. So,
the "CUA Emacsicality" would enable cua-mode, and maybe one or two other
things, "Classic Emacsicality" would leave all settings at their
optimum-for-experts. The startup screen would prompt the user to chose
his desired Emacsicality, but would at the same time encourage her to
switch to "classic" for the ultimate experience. Obviously, you'd set
some sort of option for this after the first 2 or 3 times.

However, like everything else in Emacs, good ideas only happen when the
person with the idea implements it. Maybe I should try this once Emacs
23's been released.

> Paul

Maindoor

unread,
Nov 8, 2008, 9:36:25 AM11/8/08
to help-gn...@gnu.org
Hi,

Whenever I have to reboot, I'm really sad that all my register contents,
all the files that are opened all have to be closed. I want to be able to
get back and have all the files open exactly as I left them. Lots of editors
have this functionality. Does emacs have this ?

Regards,
Sanjeev..

Wanshi

unread,
Nov 8, 2008, 9:39:51 AM11/8/08
to
Maindoor <sanjee...@yahoo.com> writes:

session.el and desktop.el

Maindoor

unread,
Nov 8, 2008, 10:09:02 AM11/8/08
to help-gn...@gnu.org, Eli Zaretskii
Amazing, exactly like I wanted.
One problem though. I saved some contents in a register.
but the contents of the register are gone in the reopened emacs.
Is this a bug or is there a workaround for this ?

Thanks.


--- On Sat, 11/8/08, Eli Zaretskii <el...@gnu.org> wrote:
From: Eli Zaretskii <el...@gnu.org>
Subject: Re: Is there anyway to save workspace so that we don't have reopen 10s of files again ?
To: help-gn...@gnu.org
Date: Saturday, November 8, 2008, 8:26 PM

> Date: Sat, 8 Nov 2008 06:36:25 -0800 (PST)
> From: Maindoor <sanjee...@yahoo.com>

>
> Whenever I have to reboot, I'm really sad that all my register
contents,
> all the files that are opened all have to be closed. I want to be able to
> get back and have all the files open exactly as I left them. Lots of
editors
> have this functionality. Does emacs have this ?

Yes, Emacs has this too.  You want "M-x desktop-save RET" before
leaving Emacs and desktop-red after you restart it.



Peter Dyballa

unread,
Nov 8, 2008, 11:11:34 AM11/8/08
to sanjee...@yahoo.com, GNU Emacs List

Am 08.11.2008 um 16:09 schrieb Maindoor:

> One problem though. I saved some contents in a register.
> but the contents of the register are gone in the reopened emacs.
> Is this a bug or is there a workaround for this ?

You're free to implement this feature ... Seems no-one needed it yet!

--
Mit friedvollen Grüßen

Pete

We are usually convinced more easily by reasons we have found
ourselves than by those which have occurred to others.
– Blaise Pascal

Reiner Steib

unread,
Nov 8, 2008, 1:24:02 PM11/8/08
to
On Sat, Nov 08 2008, Maindoor wrote:

> I saved some contents in a register. but the contents of the
> register are gone in the reopened emacs. Is this a bug or is there
> a workaround for this ?

Using savehist.el and adding `register-alist' to
`savehist-additional-variables' might it.

> --- On Sat, 11/8/08, Eli Zaretskii <el...@gnu.org> wrote:
> From: Eli Zaretskii <el...@gnu.org>

Please refrain from top-posting and from sending HTML mails on mailing
lists and newsgroups.

Bye, Reiner.
--
,,,
(o o)
---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/

Rupert Swarbrick

unread,
Nov 8, 2008, 1:57:02 PM11/8/08
to
Alan Mackenzie <a...@muc.de> writes:

>> For example, in other part your post, you said something idiotic about
>> the use of Shift key, then Rupert Swarbrick put in 60 words post that
>> effectively says ???yeah, i still use emacs thru telnet too!!!??? Can you
>> imagine, soon other tech geeker will chime in and insist emacs is
>> still used thru telnet? and soon more tech geeker will insist that
>> Emacs is not technically a Microsoft Word?
>
> :-) What I said was, I think, true. People do use Emacs over comms
> lines. Emacs developers actively resist the "tyranny of the majority".

Oh sorry Xah, you're in a killfile so I've only just noticed I got a
mention. But, yeah, I think it's pretty amazing that emacs is usable
over ssh (no, I don't allow telnet logins to my laptop). Before there's
a tirade about ancient lispniks who are out of touch with the real
world, I'll point out that I'm an undergrad.

Anyway, what other editors except v** and emacs would allow you to do
something like that? I think that they're absolutely brilliant. I'm not
entirely sure what you mean about emacs being like MS Word. After all,
it's clearly superior to emacs because it has buttons along the top for
underlining and bolding words, no?

Indeed, we should all give up on these silly text editors and use
full-featured software like proper office tools. Or even better, we
could use powerpoint for everything.

Yes, I am trolling. No I'm not serious.

> But Xah Lee moaning about long winded posts? Wow!

Heh!


Rupert

Xah

unread,
Nov 8, 2008, 4:33:55 PM11/8/08
to
On Nov 8, 10:57 am, Rupert Swarbrick <rswarbr...@gmail.com> wrote:
> >> For example, in other part your post, you said something idiotic about
> >> the use of Shift key, then Rupert Swarbrick put in 60 words post that
> >> effectively says ???yeah, i still use emacs thru telnet too!!!??? Can you
> >> imagine, soon other tech geeker will chime in and insist emacs is
> >> still used thru telnet? and soon more tech geeker will insist that
> >> Emacs is not technically a Microsoft Word?
>
> > :-) What I said was, I think, true. People do use Emacs over comms
> > lines. Emacs developers actively resist the "tyranny of the majority".
>
> Oh sorry Xah, you're in a killfile so I've only just noticed I got a
> mention. But, yeah, I think it's pretty amazing that emacs is usable
> over ssh (no, I don't allow telnet logins to my laptop). Before there's
> a tirade about ancient lispniks who are out of touch with the real
> world, I'll point out that I'm an undergrad.

the point was not about whether emacs is still used with telnet.

The point was, that often it is the case in debates of tech geekers,
they don't see the whole picture of argument but like to pick bones.
Then later readers read the pone-picking message and feel obliged to
post to concur, oblivious of what the debate was about.

In our case, it is this Alan guy, who read my article:

Why Emacs's Keyboard Shortcuts Are Painful

http://xahlee.org/emacs/emacs_kb_shortcuts_pain.html

on the section “No Employment of the Shift Key”, and all this moron
can say is that emacs is still used thru telnet.

> Anyway, what other editors except v** and emacs would allow you to do
> something like that?

do you mean the ability to edit files remotely?

BBEdit, somewhat the standard (most popular) editor on the Mac
throughout the 1990s, and today possibly still top 5 among Mac, can
edit files remotely. In fact, i think majority (if not all), major
editors/IDEs today can do that.

(for some survey of text editor popularity, and the importance of such
study, see:
Text Editors Popularity
http://xahlee.org/emacs/text_editor_trends.html
)

also note, the use of telnet/ssh is gradually waning. (in comparison
to, 10 years ago when half of my time in a day job is using emacs thru
telnet/ssh) They are replaced by various ways to get files across the
net. For example, there are Apple and Microsoft software that allows
you to have remote desktops. Then there's various methods of
tunneling. And there are various remote file systems getting more and
more robust besides NFS and Samba, then there's rsync, unison, and
various other sync software from Apple and Microsoft ...

See for example:
http://en.wikipedia.org/wiki/Remote_desktop_software
http://en.wikipedia.org/wiki/Remote_Desktop
http://en.wikipedia.org/wiki/Timbuktu_(software)
http://en.wikipedia.org/wiki/Apple_Filing_Protocol

(you can also read about rsync, unison, samba, NFS, the follow the
various links to learn about a whole lot more software and protocols
on these areas )

Now, think about this: all these applications that work remotely,
their Shift key shortcuts should be broken! Wow! The Emacs way of
thinking!

telnet itself, one of unix shit, is one of the mothefucking worst
design by itself. This has been criticized like some 20 years ago when
unix is considered the cool kid on the block.

some unix moron is going to mention X-Windows here. They should read:

The X-Windows Disaster
http://xahlee.org/UnixResource_dir/_/The_X-Windows_Disaster.html

> I'm not
> entirely sure what you mean about emacs being like MS Word.

That is for Alan, so that, we can begin to have hundreds of posts
about how emacs is not Microsoft Word and therefore whatever was his
point is wrong.

it's easy. Whenever someone suggest something about emacs, doesn't
matter how well thought, how superior, or what is the nature of it,
all you have to do is to mention that emacs is not Microsoft Word, and
do it in a insistent way with some argumentation, then you'll have
hundreds of posts to support you.

i've seen quite a few absolute morons in comp.emacs and gnu.emacs.help
in the past 3 years since i began to participate frequently. I'd say
Alan is the top 5 among the idiots. You may not be aware, he sincerely
believes that we should stick to ascii, as opposed to unicode.

is he a good guy? i'd say so. Among tech geeking morons, some are
mean, hateful. These i truely despise. They are the scumbags of
society. But Alan is cool in this respect. He's like, the Forrest
Gump. Y'know? The movie that suggests that we'll all be millionaires
and the world will be a better place as long as we have good
intentions, regardless whether we are idiots.

--------------
O, you mentioned kill file. Please read:

http://xahlee.org/UnixResource_dir/writ/kill_file_harmful.html

plain text version follows:

--------------------
Killfile Considered Harmful

Xah Lee, 2000-02-26

In newsgroups, killfile is a playful word meaning that the poster has
placed someone in a blacklist of authors, where their postings will be
automatically hidden from view in their newsreader. Such functionality
of newsreaders originated in unix. In the early 90s or before, it used
to be referred to as “sending someone into /dev/null”, because “/dev/
null” can be used as a way for deleting email program outputs.

The killfile behavior, is simply put: “sweep-under-the-rug”, “bury-
head-in-sand” kind of behavior. Imagine that in a gathering where if
everyone totally ignores other's voices except their own kind, then
what cacophony would result? Similarly, if we ignore the problem of
crime by simply using larger locks for our own doors, what consequence
would result?

We are all human beings. Our surroundings are our organs and affects
us dearly. In newsgroups, inevitably there will be certain individuals
with foul breath at times. Killfile mechanism is a very good feature
to battle such annoyances. This is not a reason for falling for the
convenience of blocking your ears from dissenting voices or the
nonconformists.

The worst thing i hate about it, is the broadcasting of someone being
killfiled. Oftentimes the sole content of a message is “You've been
killfiled”. WHAT GOOD DOES IT DO TO THE COMMUNITY BY SUCH
ANNOUNCEMENT? Is it a warning system for fellow readers to prepare to
follow suit? Or is it a stupid self-righteous act? In the course of a
unpleasant encountering, the killfilers feel the other party being
unworthy of further response but they don't want to be seen as
chickening out so they had to announce it as if saying: “Hello world:
you don't see a returning 'fuck you' from me because _I_ am _smarter_
and took a step ahead of my antagonist and covered my ears, not
because he is correct or anything like that.”. Pride is a human
nature, but unqualified conceit is despicable.

A second motivation for announcing killfile is more explicitly
juvenile. Killfile has several variant names: “You've been
killfiled.”, “plonk” (sound of falling object), “I've send you to /dev/
null” (unixism), and creativity does not seems to cease there, e.g. in
comp.lang.lisp: (plonk 'xah) or signatures that reads “in /dev/null,
they can't hear you scream.”

The reason of these playful variations is precisely literary folly.
The utterer delights in its use since most are wanting of genuine
literary artistry. This adds to the fashion of killfile and its
broadcasting.

Killfile behavior and broadcasting have another curious trait: No
burden of commitment. One cannot really tell if the person really did
the killfile. The decision to make a killfile cry in public does not
carry any weight of responsibility as compared to making a claim,
stating a “fact”, or expressing a opinion. It is simply a variation of
“fuck you”. This too, contributed to its uncontrolled popularity.

Xah
http://xahlee.org/


Juanma Barranquero

unread,
Nov 8, 2008, 5:25:06 PM11/8/08
to sanjee...@yahoo.com, help-gn...@gnu.org
On Sat, Nov 8, 2008 at 16:09, Maindoor <sanjee...@yahoo.com> wrote:

> One problem though. I saved some contents in a register.


> but the contents of the register are gone in the reopened emacs.
> Is this a bug or is there a workaround for this ?

Isn't the variable `register-alist' saved in your desktop file?

Juanma


Wei Weng

unread,
Nov 9, 2008, 1:26:19 AM11/9/08
to
Xah wrote:
> [SNIP]
>
> Xah
> http://xahlee.org/
>

Xah,

I like the points you made about emacs should change its keyboard shortcuts to
something "easier to reach". Since emacs is /very/ easy to customize, why
don't you start a project like cream for vim (http://cream.sf.net)? Cream is a
set of scripts that remap a lot of vim's default key settings to something
easier to reach and remember for newbies. I think it is only gonna be easier
to do for emacs.


Thanks
Wei

Xah

unread,
Nov 9, 2008, 3:55:07 AM11/9/08
to
On Nov 8, 10:26 pm, Wei Weng <ww...@acedsl.com> wrote:

> I like the points you made about emacs should change its keyboard shortcuts to
> something "easier to reach". Since emacs is /very/ easy to customize, why

> don't you start a project like cream for vim (http://cream.sf.net)?Cream is a


> set of scripts that remap a lot of vim's default key settings to something
> easier to reach and remember for newbies. I think it is only gonna be easier
> to do for emacs.
>
> Thanks
> Wei

Thank you for the suggestion. You can find the lisp code for the ergo
map at:

http://xahlee.org/emacs/ergonomic_emacs_keybinding.html

near the middle of the page, or just search “.el”. There's a qwerty
version and a dvorak version. In the next few months, they'll be
combined into one single file and be a minor mode, with customizable
variable to set to qwerty or dvorak.

i haven't spent time to study minor modes yet. For those who has, if
you can provide me with a minor mode template, i'll get to work right
away.

Xah
http://xahlee.org/


David Kastrup

unread,
Nov 10, 2008, 5:11:52 AM11/10/08
to
Xah <xah...@gmail.com> writes:

>> Alan Mackenzie (Nuremberg, Germany).
>
> who the fuck r u anyway? care to enlighten us with perhaps your
> resume? what emacs packages have u done? how long have u been a emacs
> dev? what's your field of expertise? how old are u? 50? 60?

Well, if you cared to read the Emacs developer lists, you'd notice that
Alan is the main person working on cc-mode, the programming mode for
such unimportant languages as C, C++, Objective C, Java, and likely awk
and some others.

Emacs comes with a file "AUTHORS" which will tell you:

Alan Mackenzie: wrote cc-awk.el
and changed cc-cmds.el cc-mode.el cc-engine.el cc-defs.el cc-langs.el
cc-vars.el cc-mode.texi cc-styles.el cc-fonts.el cc-align.el lread.c
programs.texi cc-subword.el font-lock.el isearch.el lisp.el search.texi
startup.el subr.el text.texi add-log.el and 21 other files

On the other hand, a certain "Xah Lee" is not mentioned there at all.

> my life and cock size is a open book.

Well, "get one" is obviously sound advice for you regarding the former
category, and I recommend focusing on that at first, or there may be a
lack of opportunity to apply any gains in the latter category, anyway.
Expressed differently: there is more than one way to lower the dickhead
center of gravity.

--
David Kastrup

Xavier Maillard

unread,
Nov 10, 2008, 4:25:10 PM11/10/08
to Xah, help-gn...@gnu.org

i haven't spent time to study minor modes yet. For those who has, if
you can provide me with a minor mode template, i'll get to work right
away.

You would not want to see code (not touch-)typed by a so idiotic
guy like me, would you ?

Xavier
--
http://www.gnu.org
http://www.april.org
http://www.lolica.org


Xavier Maillard

unread,
Nov 10, 2008, 4:25:03 PM11/10/08
to Alan Mackenzie, help-gn...@gnu.org, xah...@gmail.com
> using 6 fingers instead 10 is not considered touch typing.

"Is not considered" :-). I don't think we should be so concerned to
divide people (or even things) into categories. Pluto is just the same
lump of rock and ice it always was, whether we call it a planet or not.

Of course, there's also the possibility that the man only has 6 usable


fingers. It works for him.

More or less, it is the case. I have small hands and it is hard
for me to make them moving everywhere on the keyboard. Anyway, I
am not a developer in real life so... (hacking is made on my
leisure time) :)

Xavier Maillard

unread,
Nov 10, 2008, 4:25:07 PM11/10/08
to Paul R, help-gn...@gnu.org, xah...@gmail.com

Yes, they can learn. No, they don't want to learn before
trying, and I can understand that.

Indeed just like when somebody learns to read by reading.

Xah

unread,
Nov 10, 2008, 5:38:24 PM11/10/08
to
On Nov 10, 1:25 pm, Xavier Maillard <x...@gnu.org> wrote:
> i haven't spent time to study minor modes yet. For those who has, if
> you can provide me with a minor mode template, i'll get to work right
> away.
>
> You would not want to see code (not touch-)typed by a so idiotic
> guy like me, would you ?

even if you don't touch type, a ergonomic based keyboard shortcut will
still improve your emacs life.

For example, you cited how you love the Ctrl+‹npfb› shortcuts because
you don't want to move the hand to arrow. Note the keys n p f b are
scattered around the keyboard. In fact, 3 of them are the worst
possible. N and B are in the middle of the keyboard, and p is pressed
by the weakest finger.

With the ergo map, you can do Ctrl+‹kilk› to move cursor, all keys are
under your right hand. Even if hunt-and-peck is your method of typing,
it's much easier to hunt and peck on k i l k, all are in one place,
since cursor keys are frequently used together.

this page has the lisp code that turns default shortcuts into
ergonomic ones:
http://xahlee.org/emacs/ergonomic_emacs_keybinding.html

also note, when i did research on emacs command frequency, one
surprising result is that a programer types shortcuts more than he
actually type letters.

Quote:
«
Better Shortcut Layout vs Better Key Layout

On the subject of keyboarding ergonomics, a user may wonder whether
switching from QWERTY to Dvorak provides a better improvement than
switching from a lousy to better keyboard shortcut layout. (Assuming
that he does only one of the above.)

Of my Emacs Commands Frequency study, 37% of key strokes involves data
entry (that is, calling the commands “self-insert-command” and
“newline” (pressing return), while the rest 63% are calling all other
commands. This seems counter-intuitive, because one might think typing
should probably be the bulk of activity and moving cursor and deleting
text or other commands are only done few times per minute.

If we consider commands invoked by the Backspace key as data entry
too, then 40% are data entry, while 60% are editing commands. Still
surprising. Going one step further, if we consider the next group of
most used commands of moving the cursor by the smallest unit (i.e.
previous-line (C-p), next-line (C-n), backward-char (C-b), forward-
char (C-f) (also invoked by the arrow keys)) as part of data entry,
then, 64% are “data entry” and 36% are other command calls.

This data suggests that better shortcut placement is more important
than better placement of letter keys for programing.

»
--------------------

if you are interested to find out your own pattern of emacs command
use, you can try the lisp file at the bottom of this page:

http://xahlee.org/emacs/command-frequency.html

If you can send me your result, that'll be great.

Alan, you are very welcome to send me your result too.

Xah
http://xahlee.org/

Alan Mackenzie

unread,
Nov 11, 2008, 4:46:21 PM11/11/08
to Xah, help-gn...@gnu.org
Hi, Xah!

On Mon, Nov 10, 2008 at 02:38:24PM -0800, Xah wrote:

> also note, when i did research on emacs command frequency, one
> surprising result is that a programer types shortcuts more than he
> actually type letters.

Not _quite_ true from my afternoon session! See below, or the attached
file. I was into a heavy edebugging session (the utility recorded hardly
any of these commands; presumably, edebug nullified the hook, somehow),
and writing a log of this activity at the same time.

However, I used frame switching commands 114 times, putting them into
fifth place. This quite surprised me.

> Of my Emacs Commands Frequency study, 37% of key strokes involves data

> entry (that is, calling the commands ???self-insert-command??? and
> ???newline??? (pressing return), while the rest 63% are calling all other


> commands. This seems counter-intuitive, because one might think typing
> should probably be the bulk of activity and moving cursor and deleting
> text or other commands are only done few times per minute.

You should perhaps include `newline-and-indent' (C-j) in this category
too.

> If we consider commands invoked by the Backspace key as data entry
> too, then 40% are data entry, while 60% are editing commands. Still
> surprising. Going one step further, if we consider the next group of
> most used commands of moving the cursor by the smallest unit (i.e.
> previous-line (C-p), next-line (C-n), backward-char (C-b), forward-
> char (C-f) (also invoked by the arrow keys)) as part of data entry,

> then, 64% are ???data entry??? and 36% are other command calls.

> This data suggests that better shortcut placement is more important
> than better placement of letter keys for programing.

> »
> --------------------

> if you are interested to find out your own pattern of emacs command
> use, you can try the lisp file at the bottom of this page:

> http://xahlee.org/emacs/command-frequency.html

> If you can send me your result, that'll be great.

> Alan, you are very welcome to send me your result too.

Thanks! Please see the attached file.

> Xah

Alan_Mackenzie_command-frequencies.txt

Sean Sieger

unread,
Nov 11, 2008, 9:28:06 PM11/11/08
to help-gn...@gnu.org
In fact, 3 of them are the worst
possible. N and B are in the middle of the keyboard, and p is pressed
by the weakest finger.

Have you reread this??

Do you---oh, yeah, I remember the irc challenge you announced!---do you
have any idea how to type properly???

I don't know about you, but I just have these hands that rest on the
keyboard, on their finger tips and my mind puts text on the screen
through them. Middle? Weak? No mention of strong? You're insane.

I'm tellin' ya: gtypist is for you Xah.

Xah

unread,
Nov 11, 2008, 11:19:47 PM11/11/08
to
Hi Alan!

Xah Lee wrote:
> > also note, when i did research on emacs command frequency, one
> > surprising result is that a programer types shortcuts more than he
> > actually type letters.

Alan Mackenzie wrote:
> Not _quite_ true from my afternoon session!

just a afternoon! Still, only 54% are typing letters, barely majority.

can you use it for a few weeks longer for better stat?

> I was into a heavy edebugging session (the utility recorded hardly
> any of these commands; presumably, edebug nullified the hook, somehow),
> and writing a log of this activity at the same time.

interesting.

> Alan_Mackenzie_command-frequencies.txt

Thanks a lot! Very interesting.

here's my top commands... started maybe few months ago.

442502 45.61% self-insert-command
87717 9.04% next-line
63581 6.55% previous-line
52433 5.40% forward-word
46508 4.79% backward-word
17401 1.79% isearch-printing-char
17177 1.77% delete-backward-char
15277 1.57% forward-char
14931 1.54% backward-kill-word
14167 1.46% backward-char
12900 1.33% newline
10074 1.04% mwheel-scroll
7561 0.78% yank
7385 0.76% kill-line
7302 0.75% save-buffer
5932 0.61% close-current-buffer
5016 0.52% scroll-up
4658 0.48% kill-word
4593 0.47% move-beginning-of-line
4363 0.45% find-file
4264 0.44% isearch-other-meta-char
4127 0.43% isearch-repeat-forward
4097 0.42% isearch-forward
4061 0.42% scroll-down
3530 0.36% execute-extended-command
3445 0.36% delete-char
3430 0.35% set-mark-command
3307 0.34% forward-paragraph
3232 0.33% undo

Xah
http://xahlee.org/


Xah

unread,
Nov 11, 2008, 11:37:51 PM11/11/08
to
that youOn Nov 11, 6:28 pm, Sean Sieger <sean.sie...@gmail.com>
wrote:

Huh? i'm not sure what you are talking about.

I said:

> In fact, 3 of them are the worst possible. N and B are in the middle
> of the keyboard, and p is pressed by the weakest finger.

rephrase: the N, B, P keys are 3 of the worst positions on the qwerty
keyboard with respect to ease of typing. (touch typing is the context)

Are you saying this is not true??

to save messages back and forth... let me tell you some principles of
what's better keys and worse keys.

• keys under home row, are best.
• 2nd and 3rd fingers are better than 4th and 5th. (i.e. pointing
finger, mid finger, better than ring finger, pinky.)
• keys on the row immediately above home row are in general better
than the row immediately below home row.

So, roughly, on the qwerty keyboard, asdf and jkl; are in the best
category. Then, “er” and “ui” are second best category. Then other
keys are roughly equal or their diff is not that major. Then, the
worst category are t, y, b, n. Worser are those not immediately above
or below home row and reached by pinky, e.g. []{}+='"\, numbers and
other symbols.

really, to be direct, i consider the writing of this post a free
education for you. I may or may not reply to whatever likely shit u
have to say.

you can educate yourself by reading books on keyboard research. Dvorak
himself has written one (out of print; i haven't read it though).
Alternatively, if you are serious, you can spend few hours testing
them with your own fingers. Your finding will of course not completely
agree with research findings, since it is your personal fingers, but
it'll be within limits of the researhc findings or what i outlined
above for u. Try it. I invite you to spend at least 2 dedicated hours
on this issue. Like, set aside 2 hours of your day for this. If u did
this, and your finding disagree with my outline, write back. We can
discuss more.

Xah
http://xahlee.org/


Nikolaj Schumacher

unread,
Nov 12, 2008, 6:28:10 AM11/12/08
to Xah, help-gn...@gnu.org
Xah <xah...@gmail.com> wrote:

> here's my top commands... started maybe few months ago.

Some notes on this. (Some opinions, and some theses. The latter
will point to some missing data that could influence the
interpretation.)

- Clearly some individual commands are very common and need to be comfortable.

- Some commands are infrequent enough, that making them comfortable would
be a waste of time. One could argue that they should be focused on
being easy to remember. I think that are probably all those beyond the
top 25.

- I am very careful when rebinding default keys. Not because I think the
defaults are excellent, but because once you rebind one, you likely have
to rebind many more. Unfortunately, this makes rebinding common keys
less worthwhile. You can't just rebind the top 25, you'll have to
rebind many more. If you want to use M-x or C-c, it would even be
thousands.

- A very important aspect is repeated keystrokes. Clearly, a lot of
next-lines are consecutive, meaning they are easier to type the second
time around. So as far as finger strain goes, they're slightly
over-represented in the statistic.

- Commands that are repeated frequently should have the highest priority
for one-button keys. That's why I personally think save-buffer and
kill-this-buffer would be a waste for single keys. On the other hand
other-window has a terrible default for the same reason.

- There are also commands that presumably appear in groups. Clearly this
is the case for letter input. You'll often type hundreds of them in a
row without using anything else. And you do so with a high speed. So
it's important that they go well with each other. The same goes for
navigation commands. They are often used in rapid succession and should
be usable without much finger movement. Other commands (like
save-buffer or find-file) are usually executed on their own, during
typing pauses. That's why I think they can get away with a less
comfortable shortcut, while some less used commands should take priority.

- Another possible conclusion to draw from high frequency of certain
commands (especially if repeated often), is that they aren't efficient.
That's why I replaced most of my usage of other-window with my
window-numbering-mode. It replaces several invocations by a single one.
I often feel I should use next-line with a prefix, but holding my finger
on C-n is so much less trouble. (That's why I was thrilled to find
move-to-window-line recently. It saves me about 10-30 C-n each time I use
it.)


And don't forget about backspace and return. Those are some terrible keys.
(At least those L-shaped return keys.) I've replaced them with C-h and
C-m and couldn't be happier. The same goes for the keys between 0 and
backspace. On my dvorak layout those are [{ and ]}, and I've moved them
to alt+, alt+., alt+/, alt+= system-wide. I've also switched ( and )
with < and >. This really helps "the weakest finger".


regards,
Nikolaj Schumacher


Paul R

unread,
Nov 12, 2008, 6:45:56 AM11/12/08
to Nikolaj Schumacher, help-gn...@gnu.org, Xah
Hello Nikolaj,

I found your mail interesting and I would like to express my opinion on
2 points below.

Nikolaj> - I am very careful when rebinding default keys. Not because
Nikolaj> I think the defaults are excellent, but because once you rebind
Nikolaj> one, you likely have to rebind many more. Unfortunately, this
Nikolaj> makes rebinding common keys less worthwhile. You can't just
Nikolaj> rebind the top 25, you'll have to rebind many more. If you want
Nikolaj> to use M-x or C-c, it would even be thousands.

That should not happen, this means there is either a missing level of
indirection in the maps, or a mode not using the correct indirection.
I think there is a level of indirection as far as C-x is concerned,
although I'm not sure. Making sure every levels of indirection exist and
every bindings use them correctly is a prerequisite for a deep change in
emacs bindings. I think it is worth the effort, and most of it can be
automated.

Nikolaj> - Commands that are repeated frequently should have the highest
Nikolaj> priority for one-button keys. That's why I personally think
Nikolaj> save-buffer and kill-this-buffer would be a waste for single
Nikolaj> keys. On the other hand other-window has a terrible default for
Nikolaj> the same reason.

I very often use context-sticky commands for this type of thing, just
like C-x e e e ... e. So I would use C-x o o o ... o. Pressing anything
else than o would exit this sticky context. I find it both intuitive and
efficient on every places I need it.

regards


--
Paul


Sébastien Vauban

unread,
Nov 12, 2008, 7:52:23 AM11/12/08
to
Hello,

> - Commands that are repeated frequently should have the
> highest priority for one-button keys. That's why I
> personally think save-buffer and kill-this-buffer would be a
> waste for single keys. On the other hand other-window has a
> terrible default for the same reason.

I totally share your point of view. And, as well, the list of
most frequently used functions that have really annoying
bindings.

In my case -- OK, I know it is normally prohibited to use F1 to
F4 --, I've done the following mappings:

<f1> = info
<f2> = save-buffer
<f3> = open-file (or `ffap', or even `anything', if present)
<f5> = delete-other-windows
<f6> = other-window
<f8> = call-last-kbd-macro
<f9> = recompile
<f10> = next-error
<f11> = undo
<f12> = my-kill-this-buffer

I could not anymore miss almost any of them...

Seb

--
Sébastien Vauban

Ted Zlatanov

unread,
Nov 12, 2008, 10:59:53 AM11/12/08
to
On Wed, 12 Nov 2008 13:52:23 +0100 Sébastien Vauban <zthjws...@spammotel.com> wrote:

SV> Hello,


>> - Commands that are repeated frequently should have the
>> highest priority for one-button keys. That's why I
>> personally think save-buffer and kill-this-buffer would be a
>> waste for single keys. On the other hand other-window has a
>> terrible default for the same reason.

SV> I totally share your point of view. And, as well, the list of
SV> most frequently used functions that have really annoying
SV> bindings.

SV> In my case -- OK, I know it is normally prohibited to use F1 to
SV> F4 --, I've done the following mappings:

SV> <f1> = info
SV> <f2> = save-buffer
SV> <f3> = open-file (or `ffap', or even `anything', if present)
SV> <f5> = delete-other-windows
SV> <f6> = other-window
SV> <f8> = call-last-kbd-macro
SV> <f9> = recompile
SV> <f10> = next-error
SV> <f11> = undo
SV> <f12> = my-kill-this-buffer

My bindings are (all on the keypad):

/ and * = previous-error and next-error (for navigating Occur, compilation, grep, etc. buffers)
- and + = previous buffer and next buffer
Enter = `anything' command to find a file
Del = other-window
Ins = ffap

In addition, my window manager (StumpWM) uses the number keys:

4 and 6 = previous/next frame
8 abd 2 = previous/next workspace
5 = switch to last frame

Also, with my G15 keyboard, I have bound the G1..G9 keys to go to my 9
workspaces.

This is much more comfortable than reaching for the F keys, and it makes
the keypad my navigation center. I leave less frequent commands to the
F keys: compile, vc stuff, indent region...

Ted

rgb

unread,
Nov 12, 2008, 11:50:24 AM11/12/08
to
Here is mine, I don't remember when my session started last but I've
been doing some development for a few weeks.
I had to delete some unprintable characters so strings of '‡' are
truncated and I also removed entries of only one call.

15554 self-insert-command
12266 next-line
11203 previous-line
10467 forward-char
8117 backward-char
2883 delete-backward-char
2719 rgb-doublespace-maybe
1576 delete-char
1523 mwheel-scroll
1078 #[nil ℁]
541 cua-copy-region
518 yank
499 newline-and-indent
449 cua-scroll-down
435 mouse-drag-region
416 cua-scroll-up
399 backward-word
383 forward-word
376 kill-region
356 handle-switch-frame
333 nonincremental-repeat-search-forward
314 skeleton-pair-insert-maybe-here
273 mouse-set-point
269 cua-delete-region
215 cua-resize-rectangle-down
179 undo
178 beginning-of-buffer
178 other-window
165 nonincremental-search-forward
154 skeleton-pair-insert-maybe
154 goto-last-change
151 #[nil 숁"‡ [mark-sexp -1 t] 3 nil nil]
148 next-file-buffer
144 cua-resize-rectangle-right
141 scroll-bar-toolkit-scroll
118 end-of-buffer
113 dired-next-line
101 save-buffer
97 nil
92 previous-history-element
87 capitalize-word
79 fill-paragraph
77 indent-relative
74 nonincremental-re-search-forward
72 cua-resize-rectangle-up
70 delete-indentation
65 cua-insert-char-rectangle
56 forward-paragraph
53 #[nil 숁"‡ [mark-sexp 1 t] 3 nil nil]
51 ignore
46 powershell-indent-line
44 cua-move-rectangle-left
44 kill-this-buffer
42 kill-buffer
40 cua-set-rectangle-mark
40 nonincremental-repeat-search-backward
39 overwrite-mode
39 backward-sexp
37 backward-paragraph
36 execute-extended-command
30 insert-prior-line-word
29 auto-fill-mode
29 exit-minibuffer
29 popup-ruler
28 query-replace-regexp
28 search-word-under-cursor
28 universal-argument-other-key
27 digit-argument
26 cua-clear-rectangle-mark
26 menu-bar-select-buffer
24 sql-end-of-code-or-line
23 forward-sexp
21 query-replace
19 minibuffer-complete-word
18 dired-previous-line
17 minibuffer-complete
16 center-comment
16 find-file
16 mouse-set-region
14 switch-to-buffer
14 apropos-command
13 set-fill-column
12 abort-recursive-edit
12 downcase-word
12 comment-dwim
12 kill-buffer-and-window-or-frame
11 cua-rotate-rectangle
11 cua-resize-rectangle-page-down
11 bookmark-bmenu-list
11 make-frame-command
10 cua-delete-char-rectangle
10 next-history-element
9 cua-resize-rectangle-page-up
9 prev-file-buffer
9 dtw
9 powershell-DollarParen-selection
8 cua-delete-rectangle
8 just-one-space
8 follow-end-of-buffer
8 #[nil ℁쀀 b‡ [window-start] 1 nil nil]
3 search-word-under-cursor-forward
3 delete-horizontal-space
3 powershell-escape-selection
2 htmlize-view-region
2 set-buffer-file-coding-system
2 bookmark-bmenu-rename
2 flush-lines
2 recentf-open-most-recent-file-9
2 insert-sequence-symbol
2 cua-set-mark
2 widget-button-click
2 follow-mode
2 describe-key-briefly
2 mark-whole-buffer
2 describe-function
2 emacs-lisp-byte-compile
2 eval-defun
2 mouse-select-window
2 mouse-drag-vertical-line
2 recentf-open-most-recent-file-4
2 flyspell-mode
2 menu-find-file-existing

Xah

unread,
Nov 12, 2008, 11:07:28 PM11/12/08
to
Hi Nikolaj,

Interesting thoughts.


On Nov 12, 3:28 am, Nikolaj Schumacher <m...@nschum.de> wrote:
> Xah<xah...@gmail.com> wrote:
> > here's my top commands... started maybe few months ago.
>
> Some notes on this. (Some opinions, and some theses. The latter
> will point to some missing data that could influence the
> interpretation.)
>
> - Clearly some individual commands are very common and need to be comfortable.
>
> - Some commands are infrequent enough, that making them comfortable would
> be a waste of time. One could argue that they should be focused on
> being easy to remember. I think that are probably all those beyond the
> top 25.
>
> - I am very careful when rebinding default keys. Not because I think the
> defaults are excellent, but because once you rebind one, you likely have
> to rebind many more. Unfortunately, this makes rebinding common keys
> less worthwhile. You can't just rebind the top 25, you'll have to
> rebind many more. If you want to use M-x or C-c, it would even be
> thousands.

somehow i solved this. I've been using my ergonomic binding map for
about 2 years now. In the beginning several of modes override my keys,
and then i wasn't sure how to reclaim them with hook, especially in
more fundamental modes like minibuffer, shell, isearch. I pretty much
just accepted these inconveniences. I just used the default binding or
physical keys when in minibuffer. Overall, i'm still much happier
because most of the time keystroke happens not in these special modes.

But it turned out to be quite simple to solve them with a hook as my
elisp knowledge increased. Of course one worries about consequences of
rebinding keys in minibuffer... but actually not problem has turned
up. One may worry that modes will constantly reclaim keybindings but
actually not so. Occationally a mode will reclaim about 2 or 3 in the
Meta+‹letter› space, that is easily fixed with a hook. Now with
experience, the these keys are very predicable (thanks to emacs
keybinding convention)

and recently i learned that minor mode takes precedence over global
keymap... so in the very near future i'll make my ergo map a minor
mode which should avoid many hooks.

(for those who wants to try, the elisp code is here:
http://xahlee.org/emacs/ergonomic_emacs_keybinding.html
)

> - A very important aspect is repeated keystrokes. Clearly, a lot of
> next-lines are consecutive, meaning they are easier to type the second
> time around. So as far as finger strain goes, they're slightly
> over-represented in the statistic.

Yeah.

> - Commands that are repeated frequently should have the highest priority
> for one-button keys.

Yeah.

> That's why I personally think save-buffer and
> kill-this-buffer would be a waste for single keys.

I think there are sufficient availale simple shortcut positions to
allow these common commands to have a easy shortcut.

there are some 26 simple Meta+key positions and another 26 Ctrl+key
positions. Counting the top number keys and other misc symbol keys
would add about 15 to each. Now if you look at the most used
commands... the top 5 or 6 makes up a big majority... then the rest
commands gradual out. There is only one sharp gap after top 10th
command or so.

in fact, with my ergo map, since most frequently used commands are now
on the Meta+key space, the Ctrl+key space is pretty much empty now.
So, commands like Open, Close, Save, now go there with modern stardard
shortcuts with Ctrl.

(i put frequently used commands on the Alt+‹ke› space instead of Ctrl
+‹key› space is because in general Alt is easier to press than Ctrl
because Alt is right under thumb, involving a natural inward curl of
the thumb, while Ctrl is pinky, involving some un-natural stretch or
bending of the pinky, further, thumb is the most powerful finger,
pinkie the weakest.)

so, on one hand i have most used commands in the most easy to press
Alt space, on the other hand we can support the standard shortcuts for
Open, Save, Close, Print in the Ctrl space.

this is like 2 birds with one shot.

> On the other hand
> other-window has a terrible default for the same reason.

yeah.

> - There are also commands that presumably appear in groups. Clearly this
> is the case for letter input. You'll often type hundreds of them in a
> row without using anything else. And you do so with a high speed. So
> it's important that they go well with each other. The same goes for
> navigation commands. They are often used in rapid succession and should
> be usable without much finger movement.

Yeah. The cursor keys.

I have the cursor keys under the right hand home position. And the
other group is delete single char left/right, and delete word left/
right, which i have on the left hand on D F E R keys with Alt. Another
group is copy cut paste undo, which is the Z X C V keys. I have them
with Alt, but with Ctrl can also be supported to be compatible with
modern standards. The drawback is of course duplication, but we have
enough spaces. In my ergo map, some 70% of Ctrl+letter positions are
empty. (one could consider moving many “Ctrl+key key” sequence into
“Ctrl+key” space but that calls more extensive remapping)

> Other commands (like
> save-buffer or find-file) are usually executed on their own, during
> typing pauses. That's why I think they can get away with a less
> comfortable shortcut, while some less used commands should take priority.
>
> - Another possible conclusion to draw from high frequency of certain
> commands (especially if repeated often), is that they aren't efficient.
> That's why I replaced most of my usage of other-window with my
> window-numbering-mode. It replaces several invocations by a single one.
> I often feel I should use next-line with a prefix, but holding my finger
> on C-n is so much less trouble. (That's why I was thrilled to find
> move-to-window-line recently. It saves me about 10-30 C-n each time I use
> it.)

one thing i noticed is that, although emacs has extensive number of
shortcuts (about 700), from my observation of emacs users in online
forums or irc thru my now 10 years of emacs using, and from my own
experience and study on emacs keybinding and system in the past 3
years, i find that vast majority of dedicated emacs users (say, over 2
years of emacs using in full time day job), do not use most of these.
Maybe using them once in few months. A few emacs users may use
particular command, but others never did.

Put in simple words, vast majority of emacs users do not use or know
vast majority of existing keybindings. There are only maybe less than
30 keybindings that are commonly used daily by all.

> And don't forget about backspace and return. Those are some terrible keys.
> (At least those L-shaped return keys.) I've replaced them with C-h and
> C-m and couldn't be happier.

ultimately, when studying keyboard shortcut in depth, one runs into
the design problems of the keyboard's physical layout itself. For
example, the Backspace, Enter keys as you cited, among others. The
Kinesis keyboard fixed these problems. For example, it has about 4
keys for each thumb in location below a PC keyboard's space bar. They
are used for Backspace, Enter, Alt, Ctrl, Page Up/Down, Home/End. (as
far as i know it is patented, and is the reason i guess no other
keyboard manufacture followed, in particular Microsoft, of which is
rather innovative in keyboard design)

(see
• “Keyboard Hardware Design Flaws”
http://xahlee.org/emacs/keyboard_problems.html

• A Review of The Microsoft Natural Ergonomic Keyboard 4000
http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard.html
)

> The same goes for the keys between 0 and
> backspace. On my dvorak layout those are [{ and ]}, and I've moved them
> to alt+, alt+., alt+/, alt+= system-wide. I've also switched ( and )
> with < and >. This really helps "the weakest finger".

my own solution for these, is to have map them in the Hyper key space
with right hand's homerow keys. The hyper is the Windows key on my
Microsoft keyboard used with Mac OS X.

For example, i have these (with dvorak layout):

(global-set-key (kbd "H-d") (lambda () (interactive) (insert "«»")
(backward-char 1)))
(global-set-key (kbd "H-h") (lambda () (interactive) (insert "{}")
(backward-char 1)))
(global-set-key (kbd "H-t") (lambda () (interactive) (insert "()")
(backward-char 1)))
(global-set-key (kbd "H-n") (lambda () (interactive) (insert "[]")
(backward-char 1)))
(global-set-key (kbd "H-s") (lambda () (interactive) (insert "“”")
(backward-char 1)))


(global-set-key (kbd "H-D") (lambda () (interactive) (insert "‹›")
(backward-char 1)))
(global-set-key (kbd "H-T") (lambda () (interactive) (insert "『』")
(backward-char 1)))
(global-set-key (kbd "H-N") (lambda () (interactive) (insert "「」")
(backward-char 1)))
(global-set-key (kbd "H-S") (lambda () (interactive) (insert "‘’")
(backward-char 1)))

(global-set-key (kbd "H-g") (lambda () (interactive) (insert "+")))
(global-set-key (kbd "H-c") (lambda () (interactive) (insert "=")))
(global-set-key (kbd "H-r") (lambda () (interactive) (insert "\"\"")
(backward-char 1)))

Xah
http://xahlee.org/


Xah

unread,
Nov 13, 2008, 7:47:48 AM11/13/08
to
On Nov 12, 8:50 am, rgb <rbiel...@i1.net> wrote:
> Here is mine, I don't remember when my session started last but I've
> been doing some development for a few weeks.
> I had to delete some unprintable characters so strings of '‡' are
> truncated and I also removed entries of only one call.
>
> 15554 self-insert-command
> 12266 next-line
> 11203 previous-line
> 10467 forward-char
> 8117 backward-char
> 2883 delete-backward-char
> 2719 rgb-doublespace-maybe
> 1576 delete-char
> ...

Thanks Rick.

Btw, if u are still using the old version of command-frequency.el,
there's a new version, which is minor mode with lots features. It will
save stat between restart and include percentage in the report too. I
believe it also handles unprintabe chars ...

Xah
http://xahlee.org/


Xah

unread,
Nov 13, 2008, 9:33:18 AM11/13/08
to
On Nov 12, 4:52 am, Sébastien Vauban <zthjwsqqa...@spammotel.com>
wrote:

your bindings reminds me of Microsoft ones.

On their mid to high end keyboards starting about 2006, they have
bindings to function keys with command names printed on them. Here's
their bindings:

F1 Help
F2 Undo
F3 Redo
F4 New
F5 Open
F6 Close
F7 Reply
F8 Fwd
F9 Send
F10 Spell
F11 Save
F12 Print

See photos here: http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard_4000.html

i suppose under Microsoft Windows these works in most MS apps out of
the box. I suppose these are carefully choosen to be most needed
commands for vast majority of computer users today.

5 of the above you used in your personal map (help, save, open, undo,
close). For me, 6 of them i'll find very useful (they are: undo, redo,
new, open, close, save). We pretty much agree on what commands are
useful to have a F key binding. For the others in MS, the Reply, Fwd,
Send, Spell, Print, i can see they are quite useful in most apps, so i
think they are sensible. I actually do use all these commands in
variosu applications, except seldomly Print and Fwd but that's just
me.

i'm tempted to remap my app keys in emacs or os wide to go alone with
it. Standards are a good thing. The key label does help in usability
even for hard core programer. (e.g. i use dvorak since ~1993 and have
extensive customized shortcuts. Am quite used to bindings without a
label on key but still do find them convenient (i can even hunt and
pect dvorak on qwerty))

The function keys, thru my 18 years of daily computer using and
interest in keybindings, are supposed to be user defined, and it does
not happen often that a app actually have a default binding for them.
However, it tends to be the case that if there's no default binding,
no user ever bothered to bind them, even among hard core programers or
power users.

Apple for a few years in late 1990s (i think) has F1 to F4 as undo,
cut, copy, paste. I think it is Microsoft who first popularized making
default bindings with all function keys, notably in Microsoft office
suite of apps (on both Windows and Mac).

As of today, late 2000s, i think both Apple and Microsoft realized
that nobody is using or customizing function keys are these keys are
supposed to be used as, both started to just bind them. For example,
today, Mac OS X since about 2006, has half of the function keys
prebind for system wide operations. (e.g. Expose, and for keyboard
navigation of menu similar to Window's use of Alt key) In the case of
Microsoft, they actually print command names on the function keys, and
invinted the F Lock key. (i think the F Lock is a serious problem
though. See article below.)

further readings:

http://en.wikipedia.org/wiki/Function_keys

• Difference Between Apple and PC keyboards
http://xahlee.org/emacs/apple_pc_kb_diff.html

• A Review of Microsoft Natural Keyboards
http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard.html

Xah
http://xahlee.org/


rgb

unread,
Nov 14, 2008, 9:28:28 AM11/14/08
to
It is the first version and I completely forgot that I had it
installed.
The auto-save feature was turned off so it was just luck that I had
not rebooted in a while the day I noticed this thread.

I don't have much use for the data myself although it's curious
that 17% of my printable characters are spaces. I suppose
it's because SQL mode doesn't auto-indent and I'm doing that
manually.

I can tell because rgb-doublespace-maybe is the space bar.
I've got it defined specially because when I'm between skeleton
pairs such as () or [] if I type a space I typically want it on both
sides so it gives me 2 spaces with point between them.

David Combs

unread,
Dec 3, 2008, 9:10:33 PM12/3/08
to
In article <87abca5...@mmddd.domain.name>,
Wanshi <cof...@gmail.com> wrote:
>Maindoor <sanjee...@yahoo.com> writes:
>
>> Hi,
>>
>> Whenever I have to reboot, I'm really sad that all my register contents,
>> all the files that are opened all have to be closed. I want to be able to
>> get back and have all the files open exactly as I left them. Lots of editors
>> have this functionality. Does emacs have this ?
>>
>> Regards,
>> Sanjeev..
>
>session.el and desktop.el

Off the cuff -- what's the difference between the two?

Which is generally thought better?


Thanks!

David


0 new messages