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

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

Re: not good proposal: "C-z <letter>" reserved for users


From: Jean Louis
Subject: Re: not good proposal: "C-z <letter>" reserved for users
Date: Tue, 9 Feb 2021 09:41:29 +0300
User-agent: Mutt/2.0 (3d08634) (2020-11-07)

* Francis Belliveau <f.belliveau@comcast.net> [2021-02-08 23:36]:
> It would be nice for standard distro to not include a c-z binding, since it 
> already exists on a key-sequence binding.
> 
> I have remapped c-z to my own key-map, but when I must use emacs without my 
> personal bindings,  continually get messed up by accidental "suspend".
> 
> It is certainly a dangerous function to have mapped to such an easy key to 
> hit, and my fingers are trained to hit that key a lot for other reasons. 
> I can see where it was once very useful, but much less so in this
> day of GUI's.

Emacs is used on console by millions of people. Console itself defines
C-z as suspend of the job, so C-z is always expecte to suspend the
job for many programs, not only Emacs. Changing it personally may seem
convenient at first sight but is not good solution for global users.

For example if I write:

$ ls -lR /

it may give me long listing of files, and I may want to suspend it, so
C-z works during ls just in the same manner as with Emacs.

Then I may write:

$ jobs

$ jobs
[1]-  Stopped                 emacs -nw -Q
[2]+  Stopped                 ls -F -lR

So I have 2 unfinished jobs on console. I can now decide to continue
with the job #1 or job #2.

Those are common job control commands:
https://en.wikipedia.org/wiki/Job_control_%28Unix%29#Commands

> A job running in the foreground can be stopped by typing the suspend
> character (Ctrl-Z). This sends the "terminal stop" signal (SIGTSTP)
> to the process group. By default, SIGTSTP causes processes receiving
> it to stop, and control is returned to the shell. However, a process
> can register a signal handler for or ignore SIGTSTP. A process can
> also be paused with the "stop" signal (SIGSTOP), which cannot be
> caught or ignored.

So changing the C-z to something else is contrary to defaults that are
on many POSIX and similar system.

I believe that C-z does same thing in many various shells, not only in
Bash.

Job control is important part of computer operation, that is why C-z
shall remain untouched, just how it is now.

Jean



reply via email to

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