Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Change in suspend behavior

Using zsh-3.1.5, I would often make use of a feature of zsh.  I would do
the following:

  % for i in foo bar ;do
  for> mycmd $i
  for> done

Then, once "mycmd foo" was running, I could suspend that job with
'Ctrl-z', proceed to start up "mycmd bar" and then I would end up with
two backgrounded jobs which I was able to toggle back and forth using
job control commands.  Since zsh offers the wonderful feature of
autoloaded functions, I was able to wrote scripts which work with the
job table and do some pretty neat stuff with this feature (for example,
if mycmd is slogin, I was able to get most of the functionality of the
screens command).

I unpgraded to zsh-3.1.9 (and I also tried zsh-4.0.1-pre4, but the
behavior is the same there), and instead of suspending "mycmd", it
suspends the entire for loop.  The only way to run the "mycmd bar"
command is to foreground the loop and kill/exit the "mycmd foo".

This seems very bizarre to me (is zsh creating a sub-shell now every
time it makes a loop?), and it definitely less useful to me.  Is there
a config variable I can set to get the original behavior back?

Thanks for any information.

--------------------------|  Sullivan Beck  |---------------------------
mailto:sbeck@xxxxxxxxxxxx          |            Senior System Programmer
http://www.cise.ufl.edu/~sbeck     |               University of Florida
PH : (352) 392-1057                |                     CISE Department
Fax: (352) 392-1220                |                            CSE 314E
                                   |         Gainesville, FL  32611-6120

Messages sorted by: Reverse Date, Date, Thread, Author