[Top][All Lists]

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

Re: master 859190f 2/3: Convert some keymaps to defvar-keymap

From: Richard Stallman
Subject: Re: master 859190f 2/3: Convert some keymaps to defvar-keymap
Date: Wed, 13 Oct 2021 18:37:00 -0400

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > Over time, and if we don't take action, this risks leading to a
  > proliferation in various conflicting and incompatible styles, that all
  > depend on this or that third-party package.  Meanwhile, Emacs yet again
  > looks archaic and too stuck in our old ways.

We must not let our actions be driven by "how it might look" to
others.  To grant weight to that sort of thinking makes one
vulnerable.  Especially we must never make changes so as not to look
old-fashioned.  Let's take care not to think of any questions that

We should do what is right.

"Right" in software design is partly a matter of what makes usage
convenient, but that is not the only factor.  Not even the only
technical factor.

Nonetheless, maybe we should fully adopt a cleaner interface for
specifying a key to bind.

The existing one has no particular advantage except keeping changes
superficial over the years.  It would have caused problems to change
that interface over and over in complex ways.

But I think we have extended keys as much as we ever will need to,
which means that now we could adopt a new interface once and forever
-- one we won't need to change again later.

It is useful that people have experimented with other interfaces.
That provides ideas we could look at and draw on in choosing a new

But let's try to make the new interface simple.

It might be good always to use a vector for a key sequence.  Maybe
`kbd' could accept a vector and process each element.  If an element
is a symbol, it could pass that symbol through.

If an element is a string, it could process that string as it does

It would then splice the elements of the resulting string
into the vector.

Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)

reply via email to

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