all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ergus <spacibba@aol.com>
To: "Søren Pilgård" <fiskomaten@gmail.com>
Cc: "Eli Zaretskii" <eliz@gnu.org>,
	"Clément Pit-Claudel" <cpitclaudel@gmail.com>,
	emacs-devel@gnu.org
Subject: Re: Ctrl-[ ?
Date: Wed, 12 Jun 2019 10:56:50 +0200	[thread overview]
Message-ID: <20190612085650.44bquuo54qy3blce@Ergus> (raw)
In-Reply-To: <CAGXii2bX9t+SBR0+dmZYEH1nXfoJ3d6xO4G1JVu+8qxTNj=enQ@mail.gmail.com>

On Wed, Jun 12, 2019 at 10:08:44AM +0200, S??ren Pilg??rd wrote:
>On Fri, Jun 7, 2019 at 9:51 PM Eli Zaretskii <eliz@gnu.org> wrote:
>>
>> > Cc: emacs-devel@gnu.org
>> > From: Cl??ment Pit-Claudel <cpitclaudel@gmail.com>
>> > Date: Fri, 7 Jun 2019 11:02:12 -0400
>> >
>> > >>   (global-set-key (kbd "ESC") #'forward-char)
>> > >>
>> > >> ???and all that achieved was to break all keybindings starting with meta.
>> > >
>> > > In what buffer?  If there's a local binding, it will shadow the
>> > > global one, so to be sure rebind both.
>> >
>> > I *scratch* (so in emacs-lisp-mode).  It does work in fundamental mode, but it still breaks meta (M-x is undefined after redefining ESC)
>>
>> The original question was about redefining ESC.  How to do that
>> without making Meta undefined is a separate issue.  (ESC by default is
>> the prefix key of the Meta keymap, so it's a small wonder that
>> redefining ESC breaks Meta.  You will have the same effect if you
>> redefine C-x: all the C-x sequences will stop working.)
>>
>
>So for a lot of users, using graphical Emacs, not knowing the
>intricacies of af tty the following is rather baffling:
>C-[ is ESC, ESC is Meta and Meta is Alt.
>(For a confusing definition of "is")
>This is one of the things that makes Emacs feel very archaic. I do
>believe that most users coming to Emacs during the last 5-10 years are
>using the graphical version. Yeah we should keep the ability to use
>both the tty version and the graphical version as is. But forcing this
>schema on everyone is not really beneficial.
>
I partially agree here because the few users I know that came to emacs
are using only the tty version, because we work in servers and remote
machines (and tramp is not always useful for us). Basically we wanted a
decent editor for the terminal without modes.

Said that, with the right terminal emulator (say xterm, rxvt or some
others) it is possible to customize this behavior very similar to what
the gui does. And it is even possible to provide a config to do so (if
there are issues) in order to send different commands for:

C-i /= TAB
C-m /= RET
C-[ /= ESC
C-? /= erase

Or even make it case sensitive:

C-letter /= C-S-letter

So, actually forcing this schema is not due to technical reasons in my
opinion, but backward (human) compatibility.

If sometime this is properly fixed (there is an agreement), then some
terminal users will be allowed to use Control- jkli or hjkl as arrows
and the meta equivalents. But also we will have many new bindings to set
(all the C-S-letter M-S-letter) that potentially could be set to
opposite actions in some cases like undo/redo goto-next/goto-previous,
zap-to-char-forward/zap-to-char-backward or new actions like transpose
lines.



  reply	other threads:[~2019-06-12  8:56 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-06  4:49 Ctrl-[ ? Jean-Christophe Helary
2019-06-06  7:26 ` Jean-Christophe Helary
2019-06-06  8:13   ` Andreas Schwab
2019-06-06 10:12   ` Eli Zaretskii
2019-06-06 12:37     ` Jean-Christophe Helary
2019-06-06 13:02       ` Eli Zaretskii
2019-06-06 13:28         ` Jean-Christophe Helary
2019-06-06 12:44     ` Mattias Engdegård
2019-06-06 13:01       ` Eli Zaretskii
2019-06-06 13:25         ` Jean-Christophe Helary
2019-06-06 14:35           ` Eli Zaretskii
2019-06-07  6:21             ` Marcin Borkowski
2019-06-07  8:34             ` joakim
2019-06-06 13:26         ` Clément Pit-Claudel
2019-06-06 13:32           ` Juanma Barranquero
2019-06-06 14:37           ` Eli Zaretskii
2019-06-06 15:01             ` Jean-Christophe Helary
2019-06-06 15:33             ` Clément Pit-Claudel
2019-06-06 17:28               ` Eli Zaretskii
2019-06-06 17:33                 ` Clément Pit-Claudel
2019-06-06 17:48                   ` Eli Zaretskii
2019-06-06 18:34                     ` Eli Zaretskii
2019-06-06 18:48                       ` Clément Pit-Claudel
2019-06-06 19:18                         ` Eli Zaretskii
2019-06-07 15:02                           ` Clément Pit-Claudel
2019-06-07 19:44                             ` Eli Zaretskii
2019-06-07 21:01                               ` Clément Pit-Claudel
2019-06-07 23:48                               ` Jean-Christophe Helary
2019-06-08  6:23                                 ` Eli Zaretskii
2019-06-12  8:08                               ` Søren Pilgård
2019-06-12  8:56                                 ` Ergus [this message]
2019-06-06 18:55                       ` Noam Postavsky
2019-06-10  0:23             ` Stefan Kangas
2019-06-10  0:42               ` Jean-Christophe Helary
2019-06-10 16:42               ` Eli Zaretskii
2019-06-11 15:36                 ` Michael Welsh Duggan
2019-06-11 15:55                   ` Eli Zaretskii
2019-06-11 16:31                   ` Yuri Khan
2019-06-12 12:22                   ` Stefan Kangas
2019-06-12 12:14                 ` Stefan Kangas
2019-06-12 13:12               ` Alan Mackenzie
2019-06-12 13:38                 ` Óscar Fuentes
2019-06-06 13:28         ` Óscar Fuentes
2019-06-06 14:00         ` Drew Adams
2019-06-06 12:58   ` Stefan Monnier
2019-06-06 12:58 ` Ralph Seichter
2019-06-06 13:42 ` tomas
2019-06-06 14:08   ` Jean-Christophe Helary
2019-06-06 14:25     ` Stefan Monnier
2019-06-06 15:27       ` Jean-Christophe Helary
2019-06-06 18:29         ` Noam Postavsky
2019-06-06 23:08           ` Jean-Christophe Helary
2019-06-06 23:26             ` Noam Postavsky
2019-06-06 23:35               ` Jean-Christophe Helary
2019-06-07  6:24               ` Eli Zaretskii
2019-06-07 11:43                 ` Noam Postavsky
2019-06-07 13:16                   ` Jean-Christophe Helary
2019-06-07 22:04       ` Stefan Monnier
2019-06-08  6:22         ` Eli Zaretskii
2019-06-08 14:14           ` Stefan Monnier
2019-06-07  3:36 ` Emanuel Berg via help-gnu-emacs
2019-06-07  4:30   ` Jean-Christophe Helary
2019-06-07  4:43     ` Emanuel Berg via help-gnu-emacs
2019-06-07  5:04       ` Jean-Christophe Helary
2019-06-07  6:15     ` Eli Zaretskii
2019-06-07  8:04       ` Óscar Fuentes
2019-06-07  8:44         ` Eli Zaretskii
2019-06-07 13:19           ` Jean-Christophe Helary
2019-06-07 13:54             ` Noam Postavsky
2019-06-07 14:23               ` Jean-Christophe Helary
2019-06-07 15:17                 ` Noam Postavsky
2019-06-07 13:45           ` Óscar Fuentes
2019-06-07 14:20             ` Eli Zaretskii
2019-06-07 18:20               ` Óscar Fuentes
2019-06-07 20:16                 ` Eli Zaretskii
2019-06-07 16:30             ` tomas
2019-06-08  0:05               ` Francis Belliveau
2019-06-08  0:31                 ` Óscar Fuentes
2019-06-08  8:44                   ` tomas
2019-06-08 11:48                     ` 조성빈 via help-gnu-emacs
2019-06-08 11:56                       ` tomas
2019-06-08 13:06                     ` Óscar Fuentes
2019-06-08 13:30                       ` Eli Zaretskii
2019-06-08 13:54                         ` Jean-Christophe Helary
2019-06-08 14:03                           ` tomas
2019-06-08 14:22                             ` Jean-Christophe Helary
2019-06-08 15:42                           ` Eli Zaretskii
2019-06-09  0:52                             ` Jean-Christophe Helary
2019-06-09  6:19                               ` Eli Zaretskii
2019-06-09  6:51                                 ` Jean-Christophe Helary
2019-06-08 13:58                         ` tomas
2019-06-08 19:40                           ` Óscar Fuentes
2019-06-08 20:09                             ` Eli Zaretskii
2019-06-08 20:28                             ` tomas
2019-06-08 21:03                   ` Francis Belliveau
2019-06-08 21:38                     ` Óscar Fuentes
2019-06-09  0:25                       ` Stefan Monnier
2019-06-09  1:24                         ` Óscar Fuentes
2019-06-18 22:25                           ` Stefan Monnier
2019-06-11 23:05                         ` Francis Belliveau
2019-06-14  6:51                           ` Stefan Monnier
2019-06-14 12:06                             ` [offtopic] " Van L
2019-06-14 12:24                               ` tomas
2019-06-15  9:12                                 ` Van L
2019-06-15  9:44                                   ` tomas
2019-06-15 12:38                                     ` Van L
2019-06-09  6:37                     ` 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

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

  git send-email \
    --in-reply-to=20190612085650.44bquuo54qy3blce@Ergus \
    --to=spacibba@aol.com \
    --cc=cpitclaudel@gmail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=fiskomaten@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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.