help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Is Elisp really that slow?


From: Stefan Huchler
Subject: Re: Is Elisp really that slow?
Date: Fri, 24 May 2019 01:05:00 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Robert Thorpe <address@hidden> writes:

> The keybindings of the form "C-c C-something" are used by the current
> mode.  So, C-mode enables "C-c C-c", for example.  The bindings of the
> form "C-c something" are for the user to define.  Where the "something"
> isn't control, of course.
>
> How is this to work with sticky key?  Does the user have to press ctrl
> then c and then ctrl again to switch off the stickiness before pressing
> c the second time?  A timeout could also be used, but that brings it's
> own problems.

No you would change it to Ctrl + c + c.

You only need the timeout if you use both my ideas I mentioned at the
same time. So CUA mode uses a timeout, but it does not use sticky keys.

So if you press C-c it runs a small timeout and if you don't press
something else that like again C-c it uses it as copy command like
notepad/gedit would do.

But if you don't need this double use of C-c you could do it without a
timeout. and Just do the Ctrl + c + c and skip the second Ctrl.

You barely find a mode that has both defined. C-c c and C-c C-c.

But that is when you limit the bindings to C-c as start. so I güss here
in Message mode C-c C-f s stands for change subject and append and C-c
C-f C-s stands for move to subject.

Both would be come down to
Ctrl + c + f + s in my suggestion.

So you would need to press the Ctrl again but that would be still more
ergonomic than keeping the key pressed I think, because holding and
streating the finger is still less ergonomic.

My solution for C-c C-c in that mode and in most is to bind it to:
<menu> m        message-send-and-exit

But I have no standard keyborad :D

But we do it with Shift the same way, if I would write TEST I press left
shift + t + rshift + e + lshift + s + lshit + t, maybe I hold it for the
last 2 letters but I use always the one on the oposite site, because
that is more ergonomic.

And now ask yourself do you ergonomically correctly press left control +
c or right control, most including me use left, which is not ergonomic,
but it's faster and deep in our muscle memory.

But to make it short with that minimal backward compatible change yes
you would press ctrl again and I don't see a need for a timeout.

The only problem would be that you have to implement it for every os and
that might not be totally trivial. xah-fly-keys does that with menu or
whatever key you define but menu is no modifier key it's harder to do
with modifier keys because the US normaly first waits after you press a
modifier what follows and sents that compiled thing as keysignal to the
process, as far as I know.

So describe key doesn't even register that I press Ctrl till I press a
non modifier key. But if xemacs could do it emacs should be able, too.

And I mean gnome can do it too. and Emacs is also only a desktop
environment (exwm) :D




reply via email to

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