From: xah lee <xah@xahlee.org>
To: bug-gnu-emacs@gnu.org
Subject: bug#631: the M- notation suggestion
Date: Wed, 30 Jul 2008 01:49:01 -0700 [thread overview]
Message-ID: <FAD16B45-9476-4589-A7BD-F8F4ACEB180A@xahlee.org> (raw)
This is a suggestion on emacs's usability.
Recently in discussion at gnu.emacs.help, the subject of Alt+‹key›
vs M-‹key› came up.
I think emacs's M-‹key› notation is one of emacs's a usability
problem, contributing to its often cited big leaning curve.
Here's some detailed argument on why i think this should be chaged.
Many emacs old users probably don't agree, but i thought it's good to
send in one opinion anyhow.
---------------------
Emacs's M-‹key› Notation vs Alt+‹key› Notation
Xah Lee, 2008-07
Here're some reason i think emacs should adopt the Alt+‹key› and
Ctrl+‹key› notation throughout its documentation. (as opposed to
emacs's M-‹key› and C-‹key› notation)
UNIVERSALLY UNDERSTOOD
The Alt+‹key› or Ctrl+‹key› notation is universal among
Windows and Linux. They account for about 95% of computers used word
wide. Note that the word “Alt” and “Ctrl” are the exact labels
printed on the Keys of PC Keyboards. PC Keyboards has probably more
than 99% of market share.
IDENTICAL TO KEY'S LABEL
Using a notation that contains the actual label on keyboard's keys is
much easier to understand. A beginning computer user, can read the
“Ctrl+‹key›” notation and figure out which keys to press.
Emacs's notation of “M-‹key›” and “C-‹key›” requires a
learning step, even for experienced programers. Even though it is a
minor one, but learning steps add up the complexity.
(Apple's computers, which account for about %4 marke share today,
also use a notation where the name or symbol appears on the labels of
Apple keyboard's keys exactly. (OSX's documentation uses the notaton
“Command-‹key›” and “Option-‹key›”. Application's
menus shows them as “⌘‹key›” and “⌥‹key›”. Both
the word “Command” and symbol “⌘” appear on the key's label,
same for “Option” and “⌥”.)
Meta Is Alt In Practice
By default on all major OSes in use (Windows and Linux and OSX),
emacs maps its Meta to Alt key. So, practically speaking, the Meta
key is the Alt key. (Aquamacs, perhaps the most widely used emacs
distro on OSX, by default has Alt for Meta.)
KEYBOARDS DON'T HAVE META KEY TODAY
The Meta key was one of the modifier key on obsolete keyboards used
by lisp machines in the 1980s. (for photos and detail, see: Why
Emacs's Keyboard Shortcuts Are Painful)
There is practically no keyboard today that has the Meta key. Sun
Microsystem's keyboard has a key labeled with a diamond “◆”.
Sun's official documentation refers to this key as Meta key. (e.g.
search http://docs.sun.com/ on “Meta key”.) Sun's keyboards have a
market share perhaps less than 0.01%.
For photos and more commentary on Sun's keyboard, see Computer
keyboards Gallery.
MISC FACTS
Historically, a “Meta+‹key›” shortcut in emacs can also be
invoked by “Esc ‹key›” or “Ctrl+[ ‹key›”. The design
was that way mostly because at the time, many terminals do not have
or support the Meta key, and Terminal is a primary application in
computer use in the 1980s. The other reason is that, in emacs's
implementation, the Meta+‹key› is simply a ASCII control character
sequence. Today, perhaps all terminal↗, console↗, Command line
interface↗ apps support Meta as Alt either by default or in a
preference setting.
The ability of pressing Esc for Meta might be still useful for some
people. Users who needed that feature could easily read about it in
emacs doc. (I myself used “Esc ‹key›” exclusively during
1998-2004, mostly because it was a one-brainless solution that works
on all telnet apps regardless of hardware, OS, or setup, and i
frequently need to use different machine, OS, or remote servers.)
A argument from user interface perspective, is that multiple
insignificant choices or options are not good because it increases
complexity and causes the user to sidetrack their focus on tasks. KDE
and Gnome, solved this problem for linuxes by adopting wholesale
Microsoft Window's interface starting about 1998. (before KDE and
Gnome, GUI apps on unix use a variety of “Windows Managers” that
has incompatible User Interfaces, each claiming superiority.)
Note: Whether to use the “M-‹key›” or “Alt+‹key›”
notation has little to do with “Esc ‹key›” feature.
PS Note that Microsoft Windows used to use the Alt-‹key› notation.
Only in recent years they changed the minus sign to plus sign.
Arguably, this is a good change because the plus sign better
indicates key combination.
Xah
∑ http://xahlee.org/
☄
☄
next reply other threads:[~2008-07-30 8:49 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-30 8:49 xah lee [this message]
2008-07-31 1:59 ` bug#631: the M- notation suggestion Richard M Stallman
2008-07-31 2:53 ` xah lee
2008-07-31 22:01 ` Richard M Stallman
2008-08-01 2:10 ` xah lee
2008-08-01 6:53 ` xah lee
2008-07-31 22:01 ` Richard M Stallman
2008-08-01 2:07 ` xah lee
2008-07-31 17:30 ` Lennart Borgman (gmail)
2008-08-01 6:39 ` Yavor Doganov
2008-08-01 7:42 ` xah lee
2008-08-01 8:37 ` Lennart Borgman (gmail)
[not found] ` <mailman.15692.1217578047.18990.bug-gnu-emacs@gnu.org>
2008-08-04 11:11 ` Joe Wells
2008-08-04 11:33 ` xah lee
2008-08-04 11:38 ` Lennart Borgman (gmail)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=FAD16B45-9476-4589-A7BD-F8F4ACEB180A@xahlee.org \
--to=xah@xahlee.org \
--cc=631@emacsbugs.donarmstrong.com \
--cc=bug-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).