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: Sat, 13 Feb 2021 11:37:56 +0300
User-agent: Mutt/2.0 (3d08634) (2020-11-07)

* Eli Zaretskii <eliz@gnu.org> [2021-02-13 10:13]:
> > Date: Fri, 12 Feb 2021 23:26:26 +0300
> > From: Jean Louis <bugs@gnu.support>
> > Cc: Gregory Heytings <gregory@heytings.org>,
> >  Robert Thorpe <rt@robertthorpeconsulting.com>, help-gnu-emacs@gnu.org
> > 
> > So Emacs could decide to ignore the shell job control
> 
> C-z in Emacs doesn't invoke job control, it invokes an Emacs command
> that _emulates_ job control by sending the SIGTSTP signal to the Emacs
> process (if the underlying platform supports suspending;

That is how I understood it that it is. Emacs basically helps the
shell users and complies more or less to it by providing SIGTSTP
signal. Yesterday I was reading that programs need not follow that
pattern, so program like Emacs decides if to provide SIGTSTP on
Control-Z or not.

For the shell user that is technicality and not important. Shell user
need to stop the job because either something is happening that need
some handling or some other job need to be invoked in the mean time,
or information verified. Emacs occupies all screen, when suspended
user is back into the outside shell and can handle things and come
back, or decide to unsuspend Emacs hours or days later.

> otherwise it invokes a subsidiary shell).  The "real" job control is
> disabled when you enter Emacs, by virtue of the keyboard input setup
> Emacs does at startup.

You have explained now technical thing, and that is interesting. I was
thinking that shell has authority and one can suspend any
program. That is how I expected shell to work for decades. I don't
remember cases where it did not work.

Now I wonder if all programs are first disabling shell control and
then deciding to emulate it. For example Midnight Commander or other
editors, I can suspend with Control-Z without problem. I wonder if it
is the program doing it or the shell itself.

> So please don't assume C-z is some shell job control magic; it isn't.
> This is Emacs emulating that magic, because we decided long ago to do
> that.  Arguing that Emacs does it because the underlying shell does it
> is therefore counter-productive.

Maybe there is some misunderstanding. Your explanation is definitely
clarifying for others, for me I understood it already though without
those technicalities.

Development at the time of deciding to provide Suspend on Control-Z
probably did follow the assumption that that is what shell users
expect to happen when they click Control-Z so for that key Emacs
complies to job control willingly, not submissively.

I hope we are fine.

Jean




reply via email to

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