emacs-devel
[Top][All Lists]
Advanced

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

Re: Keybinding styles (was: [External] : Re: Gitlab Migration)


From: John Yates
Subject: Re: Keybinding styles (was: [External] : Re: Gitlab Migration)
Date: Sun, 5 Sep 2021 15:03:54 -0400

On Sat, Sep 4, 2021 at 9:26 AM Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>
> I keep wishing someone came up with a clever way for modes to specify
> their key-bindings in such a way that Emacs can automatically derive from
> it the keys to use "normally" as well as the keys to use in Evil or the
> keys to use in god-mode, or the keys to use in this hypothetical new
> `really-cua-mode`, ...
> So as to finally address this long-term maintenance challenge.

I would like to suggest that key bindings are the most contentious
aspect of Emacs.  We have numerous examples of efforts to offer
alternative binding schemes.  But it is the "default" bindings that
engender all of the "Sturm und Drang".  The keystrokes in these
default bindings are distinguished in tutorials, package development,
documentation, and casual communication over those in other binding
schemes.

Many regard those keystrokes as a fundamental Emacs feature.
Yet, I believe, whatever one's view of vi/vim, none of us would deny
that a user with evil-mode enabled is still truly using Emacs.  What
matters is that such a user is invoking elisp functions to work with
Emacs buffers.  To me, that is the essence of being an Emacs user.

As a first step towards Stefan's wish, might I suggest that we
consider what it would take to move to a world in which other
binding schemes are considered fully equal peers of our current
default bindings?  Once we internalize that model, we can then
work on abstractions to describe the relationships between the
functions exposed by a given package (flat, sub-groups) and
their relationship to overarching concepts like navigation.

/john

PS: For the record, I use the default bindings.



reply via email to

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