From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25229 invoked by alias); 31 Jul 2010 18:47:34 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 15216 Received: (qmail 210 invoked from network); 31 Jul 2010 18:47:29 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.1 Received-SPF: none (ns1.primenet.com.au: domain at bewatermyfriend.org does not designate permitted sender hosts) From: Frank Terbeck To: Peter Stephenson Cc: Simon Friedberger , zsh-users@zsh.org Subject: Re: zle reset-prompt In-Reply-To: <20100731184704.7bbd8a64@pws-pc> (Peter Stephenson's message of "Sat, 31 Jul 2010 18:47:04 +0100") References: <20100728201536.GA1146@a-oben.org> <20100729100452.53f1cc15@csr.com> <20100730135510.GB4728@a-oben.org> <20100730140827.GC4728@a-oben.org> <20100731184704.7bbd8a64@pws-pc> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) Date: Sat, 31 Jul 2010 20:34:56 +0200 Message-ID: <87y6crfqjz.fsf@ft.bewatermyfriend.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Df-Sender: 430444 Peter Stephenson wrote: > On Fri, 30 Jul 2010 16:08:28 +0200 > Simon Friedberger wrote: >> OK, so I tried a couple of possible calls with ESC x and the functions >> in my prompt config. >> It seems that zle-keymap-select might be the perpetrator. >> Does that make any more sense? > > Not so far as I can see... I've run "bindkey -v", defined > > zle-keymap-select() { print Status $?; } > zle -N zle-keymap-select > > the run "false", and when I hit ESC and i in turn I get "Status 1" > repeatedly. If I've understood your problem, you're saying this would > give "Status 0" at some point. Yeah, it doesn't mess with `$?'. But here's something I'm finding odd. Consider this setup from "zsh -f": [snip] bindkey -e PS1='%? %% ' precmd() { true } cs () { zle clear-screen zle reset-prompt } zle -N cs bindkey '^l' cs [snap] Then this: 0 % false 1 % (hit ^l here) [..screen is cleared..] 0 % echo $? 1 0 % I thought `reset-prompt' alone was enough, but it's not. Also, this only happens, when `clear-screen' and `reset-prompt are used in a single widget. If called separately, this doesn't happen either. Regards, Frank