Date: Mon, 15 Jul 2013 11:45:16 +0700 From: Eugene Grosbein <eugen@grosbein.net> To: Jilles Tjoelker <jilles@stack.nl> Cc: FreeBSD Stable <freebsd-stable@FreeBSD.org> Subject: Re: script(1), cfmakeraw() and Ctrl-Z Message-ID: <51E37E5C.5020301@grosbein.net> In-Reply-To: <20130714213734.GB30708@stack.nl> References: <51E2DC6B.2090605@grosbein.net> <20130714213734.GB30708@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
On 15.07.2013 04:37, Jilles Tjoelker wrote: > On Mon, Jul 15, 2013 at 12:14:19AM +0700, Eugene Grosbein wrote: >> I've noted that commands like "script -qa /tmp/log sleep 100" >> cannot be suspended with Ctrl-Z keys. The reason is call to cfmakeraw() >> in script.c - if I comment it out, Ctrl-Z starts to work as expected. > >> portupgrade uses script(1) so build/install process cannot be suspended too. >> (I'm building libreoffice-4.04 now) > >> The function cfmakeraw() is used since CVS revision 1.1 when script >> was imported with other "BSD 4.4 Lite Usr.bin Sources". > >> Is cfmakeraw() really needed? > > The cfmakeraw() call ensures that the processes running within script > get all control characters. For example, you can suspend a job in the > inner shell using Ctrl+Z. This indeed makes it impossible to suspend > script itself. Is it possible to achieve same effect of passing other control characters but Ctrl-Z? So, it would be possible suspend long-running portupgrade. Eugene Grosbein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51E37E5C.5020301>