From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4948 invoked from network); 4 Mar 2001 05:22:28 -0000 Received: from sunsite.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 4 Mar 2001 05:22:28 -0000 Received: (qmail 7308 invoked by alias); 4 Mar 2001 05:22:09 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 13560 Received: (qmail 7297 invoked from network); 4 Mar 2001 05:22:08 -0000 From: "Bart Schaefer" Message-Id: <1010304052058.ZM13951@candle.brasslantern.com> Date: Sun, 4 Mar 2001 05:20:57 +0000 X-Mailer: Z-Mail (5.0.0 30July97) To: zsh-workers@sunsite.dk Subject: "setopt noexec" and interactive shells MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii I've noticed that bash won't honor "set -n" when the shell is interactive; but zsh will happily do so, leaving you with a useless prompt. Having just typo'd "set -n ..." for "sed -n ...", I'm acutely aware of the problems with this. I briefly considered adding "setopt exec" to precmd, until I thought about it for an additional second. Perhaps a happy compromise would be to force "setopt exec" just before executing precmd? Any reason to test e.g. `!justonce' before doing this? Index: Src/init.c =================================================================== --- Src/init.c 2001/01/16 17:18:09 1.70 +++ Src/init.c 2001/03/04 05:19:50 @@ -114,6 +114,7 @@ if (interact) { int hstop = stophist; stophist = 3; + opts[EXECOPT] = 1; preprompt(); stophist = hstop; } -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net