I'm using nano inside a MATLAB session that is running inside a screen (-x) terminal. I accidentally hit Ctrl-Z and it immediately leaves nano, prints "Use "fg" to return to nano", but does not show a command prompt. Whatever I type appears on the screen but nothing responds. If I hit Ctrl-Z, ^Z just prints to the screen. Any ideas? Using 12.04.
In the comments the author says that he or she is running the
nano command from Matlab, and that there is no prompt whatsoever after suspending it with CTRL-Z. This is probably a bug in Matlab(1) which should not allow a CTRL-Z arrive to nano if it can't cope with it...
The problem is that the shell command
jobs) works only with direct children of the shell. But you can continue a stopped process from another shell, although this will not guarantee that the status of the screen is correctly managed:
in another terminal window, find the
% ps ugx | grep nano romano 10600 0.0 0.0 20784 1628 pts/11 T 16:52 0:00 nano prova romano 10653 0.0 0.0 18256 900 pts/11 S+ 16:53 0:00 grep nano
Notice that it is stopped (state
Continue it with
kill -CONT 10600
...and hope it works (can mess up the terminal greatly). You can also trying a
killall -CONT nano
that way the
CONT signal is sent to all the "nano" processes (shouldn't be a problem though).
(1) I tried with
EDITOR=nano octave and then
edit file in octave. Pressing CTRL-Z messes the things up quite well... so maybe it's not Matlab but a strange interaction on who receive and manage the TSTP signal.
If it's the only backgrounded process entering
% followed by Return should return you to nano.
fg should always work. Even when you have more than one job, it should bounce you back to the newest one.
List your jobs
Bring a job to the foreground
change the "1" to the job number corresponding to nano.