emacs-devel
[Top][All Lists]
Advanced

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

RE: Binding F11 and F12 to buffer-switching and file-saving bydefault


From: Drew Adams
Subject: RE: Binding F11 and F12 to buffer-switching and file-saving bydefault
Date: Wed, 31 Jan 2007 08:51:27 -0800

> > Multiplying bindings for common commands adds confusion IMHO.
>
> Hmm. Perhaps that is true. (To the rest of you: Do you agree?)

FWIW, I do. And it does more than add confusion: it raises a shaggy mane
against Occam's Razor.

I also disagree with those who feel that it's a good idea for Emacs to bind
lots of keys, such as function keys, by default, giving as the sole
rationale ("Why not?") that users can always override them. I disagree with
the sentiment that unbound keys are virgin territory that is secretly
yearning to be ravished, paradise pleading inwardly to be paved.

Why? Binding keys by default just because they can be bound reduces
unnecessarily the possibilities for third-party libraries (i.e. those not
included in Emacs). It's generally considered good etiquette for a library
not to trample on standard Emacs bindings, when that can be avoided. If
Emacs binds everything, then what's left for other libraries?

IOW, it's not just user customizations that might need to bind keys for
particular uses, but also other libraries. And, if there is no distinction
made among standard bindings (feel free to modify these, please don't modify
those if you can avoid it, etc.), then libraries will end up overriding
bindings in no special order, and that means overriding some that perhaps we
wouldn't want overridden.

If there are some keys that are not bound by default (and not reserved for
users, by convention), then a third-party library will feel free to bind
them. If there are no such keys, or few, then we probably should classify
the standard bindings somehow, to give other libraries guidelines about
which to trample in priority.

> But M-x compile and M-x recompile have no default binding.

As someone else said, one person's gotta-have-a-quick-key command is
another's never-use-that command. Emacs developers have always weighed
considerations of common usage. They need to decide how important it is to
most users to bind such a command by default.

Just because some key has not yet been bound by default is not a sufficient
reason to bind it to something in vanilla Emacs. Leave a few herbs
untrimmed.

My own preference is that the function keys be left unbound by default,
except where there might be well-established conventions outside Emacs - for
example, for f1.

> Yes, but as Stefan mentions in his reply to this message, we
> should at least bind F11 and F12 to *something*.

That's precisely the argument I don't buy: `If it's not yet bound, that's a
good enough reason to give it a default binding.' No; some other
justification should be given, IMO.

(leave-no-key-unbound manifest-destiny seen-one-redwood-you've-seen-em-all .
more-of-the-same)






reply via email to

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