unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Stefan Monnier <monnier@iro.umontreal.ca>,
	Yuri Khan <yuri.v.khan@gmail.com>
Cc: Lars Ingebrigtsen <larsi@gnus.org>,
	Emacs developers <emacs-devel@gnu.org>,
	Eli Zaretskii <eliz@gnu.org>,
	Gregory Heytings <gregory@heytings.org>,
	Stefan Kangas <stefankangas@gmail.com>
Subject: Re: Suggested experimental test
Date: Fri, 26 Mar 2021 01:54:35 +0200	[thread overview]
Message-ID: <6e619bd9-91cb-85ad-63e6-b46e12adcdbf@yandex.ru> (raw)
In-Reply-To: <jwv4kgz9c25.fsf-monnier+emacs@gnu.org>

On 25.03.2021 23:11, Stefan Monnier wrote:
> E.g. if it's bound to `C-c` it's fairly convenient to have bindings
> within it of the form `C-<letter>`, but if it's bound to `c` instead
> (assuming a a modal key-binding scheme like vi) then using `C-<letter>`
> within it is much less convenient.

Interesting example. I wanted to say nobody will bind it to 'c', but 
some people might decide to bind it to M-c instead.

Here's a thought: let's invent an extension of the kbd syntax which will 
allow us to specify a modifier indirectly based on an entry in 
key-translation-map. Like:

   (kbd "<mode-specific> <mode-specific-modifier>-c")

Even more backward-incompatible, but okay. But what to do if 
<mode-specific> has no modifiers, like <menu> in Yuri's example? 
Translate '<mode-specific-modifier>-c' to just 'c'? What happens to any 
other simple 'c' entry in that keymap? Do we "flip" it to, say, 'C-c'?

What happens if the user decides to bind <mode-specific> to 'C-d', and 
in my third-party package I choose 'C-c C-d' as a command binding? That 
seems like a popular one, inspired by SLIME. *And* I have another 
binding in there, 'C-c C-c'. Going along with the new feature, I'll 
write the first one like '<mode-specific> C-d' and the second one 
'<mode-specific> <mode-specific>'... right? That's a conflict. The only 
way of resolving such conflicts I can imagine is to also "flip" any 
'C-d' written verbatim and not as <mode-specific> back to C-c, the 
default <mode-specific> binding, when <mode-specific> is bound to 'C-d'. 
Which seems both tricky to implement and punishing to a lot of existing 
code that the user might try to use.

So maybe we should limit the scope of the effort and not try to solve 
all the inefficiencies, or we'll never make progress on this issue 
(after all, the main audience of this change are people who aren't so 
fond of key sequences; or at least not yet).

But better ideas welcome, of course.



  reply	other threads:[~2021-03-25 23:54 UTC|newest]

Thread overview: 171+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-20  9:03 Suggested experimental test Gregory Heytings
2021-03-20 11:14 ` Jean Louis
2021-03-20 11:27   ` Eli Zaretskii
2021-03-20 11:34   ` Gregory Heytings
2021-03-20 12:37 ` Proposal to remove C-o binding [was: Suggested experimental test] Alan Mackenzie
2021-03-21  6:53 ` Suggested experimental test Lars Ingebrigtsen
2021-03-21  8:35   ` Alfred M. Szmidt
2021-03-21 13:20     ` Gregory Heytings
2021-03-21 18:16       ` Alfred M. Szmidt
2021-03-21 22:16         ` Gregory Heytings
2021-03-21 22:54           ` Alfred M. Szmidt
2021-03-21 23:05             ` Gregory Heytings
2021-03-21 23:13               ` Alfred M. Szmidt
2021-03-21 23:46                 ` Gregory Heytings
2021-03-22  0:40                   ` Alfred M. Szmidt
2021-03-22 10:05                     ` Gregory Heytings
2021-03-22 18:14                       ` Alfred M. Szmidt
2021-03-22 19:06                         ` Gregory Heytings
2021-03-22 19:56                           ` [External] : " Drew Adams
2021-03-22 21:03                             ` Alfred M. Szmidt
2021-03-22 21:26                               ` Drew Adams
2021-03-23  8:06                                 ` Alfred M. Szmidt
2021-03-22 21:08                           ` Alfred M. Szmidt
2021-03-22 11:21                   ` Jean Louis
2021-03-22 11:07               ` Jean Louis
2021-03-22  3:33           ` Eli Zaretskii
2021-03-22 10:05             ` Gregory Heytings
2021-03-22 11:37               ` Philip Kaludercic
2021-03-22 12:20                 ` Gregory Heytings
2021-03-22 17:38               ` Eli Zaretskii
2021-03-22 17:48                 ` Gregory Heytings
2021-03-22 18:11                   ` Eli Zaretskii
2021-03-22 18:15                   ` Alfred M. Szmidt
2021-03-22 18:14               ` Alfred M. Szmidt
2021-03-22  8:59           ` Rudolf Schlatte
2021-03-22 10:05             ` Gregory Heytings
2021-03-22 10:49           ` Jean Louis
2021-03-21 10:48   ` Gregory Heytings
2021-03-21 10:58     ` Sv: " arthur miller
2021-03-21 13:20       ` Gregory Heytings
2021-03-21 18:16       ` Sv: " Alfred M. Szmidt
2021-03-22  5:11         ` Richard Stallman
2021-03-22 10:24       ` Sv: " Jean Louis
2021-03-22 10:14     ` Jean Louis
2021-03-22 12:06     ` Lars Ingebrigtsen
2021-03-22 12:23       ` Gregory Heytings
2021-03-22 16:15         ` Jean Louis
2021-03-22 16:14       ` Jean Louis
2021-03-22 17:08         ` Gregory Heytings
2021-03-22 17:46           ` Alan Mackenzie
2021-03-22 17:59             ` Gregory Heytings
2021-03-22 18:23             ` Alfred M. Szmidt
2021-03-23  6:09             ` Richard Stallman
2021-03-22 18:03           ` Jean Louis
2021-03-22 17:20       ` Robin Tarsiger
2021-03-22 17:40       ` Eli Zaretskii
2021-03-22 17:55         ` Gregory Heytings
2021-03-22 18:13           ` Eli Zaretskii
2021-03-22 20:22             ` Gregory Heytings
2021-03-23  8:06               ` Eli Zaretskii
2021-03-23 14:15                 ` Gregory Heytings
2021-03-23 14:37                   ` Eli Zaretskii
2021-03-23 16:51                     ` Gregory Heytings
2021-03-23 17:13                       ` Eli Zaretskii
2021-03-23 18:08                       ` Alfred M. Szmidt
2021-03-23 21:06                         ` Gregory Heytings
2021-03-23 21:43                           ` Alfred M. Szmidt
2021-03-23 21:57                             ` Gregory Heytings
2021-03-23 22:08                               ` Alfred M. Szmidt
2021-03-23 22:14                                 ` Gregory Heytings
2021-03-23 22:42                                   ` Alfred M. Szmidt
2021-03-23 23:05                                     ` Gregory Heytings
2021-03-24  5:15                                 ` Richard Stallman
2021-03-24  5:16                           ` Richard Stallman
2021-03-24  6:39                           ` Jean Louis
2021-03-24  6:32                       ` Jean Louis
2021-03-24  6:10                   ` Jean Louis
2021-03-22 18:17         ` Lars Ingebrigtsen
2021-03-22 18:50           ` Eli Zaretskii
2021-03-22 19:09             ` Lars Ingebrigtsen
2021-03-22 19:55               ` Lars Ingebrigtsen
2021-03-22 22:02                 ` Stefan Kangas
2021-03-22 22:33                   ` [External] : " Drew Adams
2021-03-22 23:28                     ` Stefan Kangas
2021-03-22 22:44                   ` Dmitry Gutov
2021-03-22 23:22                     ` Stefan Kangas
2021-03-23  5:22                     ` Jean Louis
2021-03-23  7:43                       ` Eli Zaretskii
2021-03-23 12:28                         ` Philip Kaludercic
2021-03-23 12:41                           ` Eli Zaretskii
2021-03-23 13:09                             ` Dmitry Gutov
2021-03-23 13:27                               ` Philip Kaludercic
2021-03-23 14:00                                 ` Dmitry Gutov
2021-03-23 13:54                               ` Eli Zaretskii
2021-03-23 17:04                                 ` Dmitry Gutov
2021-03-23 21:06                                 ` chad
2021-03-24  5:07                             ` Jean Louis
2021-03-25  5:09                               ` Richard Stallman
2021-03-23  6:12                     ` Yuri Khan
2021-03-24 23:41                       ` Dmitry Gutov
2021-03-25  6:12                         ` Yuri Khan
2021-03-25 13:20                           ` Dmitry Gutov
2021-03-25 14:30                             ` Basil L. Contovounesios
2021-03-25 17:09                               ` Dmitry Gutov
2021-03-25 18:59                               ` Yuri Khan
2021-03-25 19:30                             ` Yuri Khan
2021-03-25 21:11                               ` Stefan Monnier
2021-03-25 23:54                                 ` Dmitry Gutov [this message]
2021-03-26 10:34                                   ` Stefan Kangas
2021-03-26 23:13                                     ` Dmitry Gutov
2021-03-26 23:34                               ` Dmitry Gutov
2021-03-27  0:02                                 ` Stefan Monnier
2021-03-28 13:59                                   ` Dmitry Gutov
2021-03-22 20:22               ` Gregory Heytings
2021-03-22 20:36                 ` Lars Ingebrigtsen
2021-03-22 21:03                   ` Alfred M. Szmidt
2021-03-22 20:56         ` Thierry Volpiatto
2021-03-22 18:11       ` [EXTERNAL] " Stephan Mueller
2021-03-22 18:34         ` Lars Ingebrigtsen
2021-03-22 18:56           ` Eli Zaretskii
2021-03-22 19:13             ` Lars Ingebrigtsen
2021-03-22 19:19               ` Eli Zaretskii
2021-03-22 19:25                 ` Lars Ingebrigtsen
2021-03-22 19:49                   ` Stefan Monnier
2021-03-22 19:52                     ` Lars Ingebrigtsen
2021-03-22 20:54                       ` Stefan Monnier
2021-03-22 21:04                         ` Lars Ingebrigtsen
2021-03-23  7:18                           ` Eli Zaretskii
2021-03-22 19:21               ` chad
2021-03-22 19:26                 ` Eli Zaretskii
2021-03-22 19:51                   ` Stefan Monnier
2021-03-22 20:04                     ` Eli Zaretskii
2021-03-22 20:11                       ` Lars Ingebrigtsen
2021-03-22 20:16                         ` Lars Ingebrigtsen
2021-03-23  7:04                           ` Eli Zaretskii
2021-03-22 20:49                       ` Stefan Monnier
2021-03-22 21:02                         ` [External] : " Drew Adams
2021-03-23  7:09                         ` Eli Zaretskii
2021-03-22 19:28                 ` Lars Ingebrigtsen
2021-03-22 19:56                   ` [External] : " Drew Adams
2021-03-22 20:56                     ` Stefan Monnier
2021-03-22 21:19                       ` Drew Adams
2021-03-22 20:22             ` Gregory Heytings
2021-03-23  8:09               ` Eli Zaretskii
2021-03-23 14:15                 ` Gregory Heytings
2021-03-23 14:31                   ` Eli Zaretskii
2021-03-23 17:21                   ` Bob Rogers
2021-03-24  5:42                   ` Jean Louis
2021-03-23 20:55                 ` chad
2021-03-25 17:04           ` [EXTERNAL] " Stephan Mueller
2021-03-22 19:37         ` Stefan Monnier
2021-03-22 19:42         ` Dmitry Gutov
2021-03-22 20:33       ` Jose A. Ortega Ruiz
2021-03-22 18:42     ` Sean Whitton
  -- strict thread matches above, loose matches on Subject: below --
2021-03-23 21:51 Paul W. Rankin via Emacs development discussions.
2021-03-24  8:34 ` Lars Ingebrigtsen
2021-03-24  8:51   ` tomas
2021-03-24  9:16     ` Paul W. Rankin via Emacs development discussions.
2021-03-24  9:22       ` tomas
2021-03-24 10:37     ` Eli Zaretskii
2021-03-24 11:13       ` tomas
2021-03-24 11:51         ` Jean Louis
2021-03-24 11:55           ` tomas
2021-03-25  5:14           ` Richard Stallman
2021-03-24 17:04         ` Eli Zaretskii
2021-03-24 17:19           ` tomas
2021-03-24 17:30         ` Dmitry Gutov
2021-03-24 20:08           ` tomas
2021-03-25  5:14       ` Richard Stallman
2021-03-25  5:48         ` Paul W. Rankin via Emacs development discussions.
2021-03-25  7:46         ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6e619bd9-91cb-85ad-63e6-b46e12adcdbf@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=gregory@heytings.org \
    --cc=larsi@gnus.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=stefankangas@gmail.com \
    --cc=yuri.v.khan@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).