Ero leggermente confuso da:
% vim tmp
zsh: suspended vim tmp
% kill %1
% jobs
[1] + suspended vim tmp
% kill -SIGINT %1
% jobs
[1] + suspended vim tmp
% kill -INT %1
% jobs
[1] + suspended vim tmp
Quindi mi sono dimesso per "farlo da solo" e mi chiedo perché dopo:
% fg
[1] - continued vim tmp
Vim: Caught deadly signal TERM
Vim: Finished.
zsh: terminated vim tmp
%
Oh!
Ha senso davvero, ora che ci penso, che vim
deve essere in esecuzione per poter dire al suo gestore di segnale di smettere e farlo.
Ma ovviamente non è quello che intendevo.
C'è un modo per "svegliarti e uscire" in un singolo comando? cioè, un alias incorporato per kill %N && fg %N
?
Perché il ripristino in background non funziona? Se bg
invece di me fg
, Vim rimane vivo fino a me fg
, che interrompe il mio intuito di cui sopra.