emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: dired-jump keybinding and autoload


From: Drew Adams
Subject: RE: dired-jump keybinding and autoload
Date: Sun, 23 May 2010 11:14:12 -0700

> >> See (info "(elisp) Key Binding Conventions"). I might be 
> >> wrong since that page does not mention C-x, but I think it should.
>
> I want you to look at the keys reserved for major modes!

Nothing there about C-x (as you yourself acknowledged).
Nor should there be.

> > C-x today, yesterday, and tomorrow is an _excellent_ choice 
> > as an Emacs key prefix.  It is easy-to-hand.  And it has been
> > conventional in Emacs (and even beyond) for over 30 years.
> 
> We have different opinions. Saying that it is an excellent choice is
> an exaggeration. It is not an excellent choice in my opinion.

It is a _fact_ that C-x is very easy-to-hand (though admittedly not
super-ergonomic).

It is a _fact_ that C-x is not a self-inserting (insertable) char.
(It is, however, an ASCII control character, CAN
http://en.wikipedia.org/wiki/Cancel_character.)

It is a _fact_ that C-x is available nearly everywhere: in non-graphic terminals
as well as window managers. 

It is a _fact_ that C-x has been conventional in Emacs for decades.  (That alone
does not make it an excellent choice, of course, but it does offer a little
support for continuation.)

It is my _opinion_ that all of these facts together make C-x an excellent choice
as a _prefix_ key.  We are entitled to our own opinions, but the facts are
common.

(CUA has been a convention for nearly as long, of course, and it is wider than
Emacs.  But then no one has suggested doing away with CUA mode.)

> would not that mean that all key bindings should be changed
> when cua-mode is on? Or do you think CUA land is outside of Emacs?

Emacs CUA mode is part of Emacs.

As far as I am concerned, CUA mode can change any bindings it wants, especially
if the key-binding conventions you cited are respected.  I have no problem with
any CUA-mode bindings inside of CUA mode.

> All C-x bindings are absent from that page. I guess you do not mean
> that a major mode could use any key bindings starting with C-x?

Why not?

> I have assumed that C-x is not mentioned because it is reserved for
> Emacs. If not, then it should be mentioned on that info page to
> clarify things.

I do not believe that C-x is "reserved for Emacs".
Nor should it be.

The page does not attempt to mention everything that is _not_ reserved for
Emacs.  It just tries to give some guidelines.

> But my opinion is very clear: Recommend that 3rd party libraries
> should not use C-x as a prefix key.

Your opinion is clear.  And the reasons you gave are:

1. C-x is something different in CUA mode.

2. C-x as a prefix should be reserved for Emacs, if it is not already.

#2 is of course both the opinion and its rationale - infloop.

What about 3rd-party use of C-x as a non-prefix key?  Is that OK?  Could someone
define a new major or minor mode, say AUC-mode, that binds C-x to some action,
say `tuc'?

Should that be allowed for any 3rd-party library or just for emulation-mode
libraries?  Or just for libraries that emulate well-known key-binding
conventions?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]