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

Re: trixie and "crontab -e"



07.11.25, 16:37 +0100, D. R. Evans:

> If I do:
> 
> [ZB:~] export VISUAL=/usr/bin/kate
> [ZB:~] crontab -e
> 
> Then I get the immediate "No modification made" message, and kate opens with 
> an empty crontab file (BTW, it really is true that the "No modification made" 
> message is immediate: it's written to the terminal *before* the kate editor 
> session appears).

If you start kate from the terminal, the shell prompt likely reappears
before the kate window is visible. I guess that's for the same reason:

~ strace kate
[...]
clone(child_stack=NULL,
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7f2f53837d50) = 329128
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
exit_group(0)                           = ?
+++ exited with 0 +++
(kate's window is still there, though)

My interpretation (that may be wrong, of course) of what happens is the
following:
What kate (at least more recent versions of it) seems to do, is spawn a
child process that will do the actual work (show it's window, let the
user edit stuff etc.), while the parent process - which is what crontab
or the shell started, and for which they wait to terminate - exits.
crontab does neither know nor care that kate's child process is still
running but thinks everything's done since kate's initial process has
terminated.
So, from crontab's point of view the process it started (/usr/bin/kate)
has terminated and, since the user hasn't had the chance to do some
actual editing, the file-to-be-edited is unchanged. And that's what
crontab tells you.

-- 
Regards
  mks


Reply to: