From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23215 invoked from network); 27 Jun 1999 08:42:37 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 27 Jun 1999 08:42:37 -0000 Received: (qmail 6703 invoked by alias); 27 Jun 1999 08:42:27 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 6873 Received: (qmail 6696 invoked from network); 27 Jun 1999 08:42:25 -0000 From: "Bart Schaefer" Message-Id: <990627084221.ZM9491@candle.brasslantern.com> Date: Sun, 27 Jun 1999 08:42:21 +0000 X-Mailer: Z-Mail (5.0.0 30July97) To: zsh-workers@sunsite.auc.dk Subject: PATCH: pws-24: Stop the unbearable beeping of magic-space MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii I should have noticed this when 6814 was posted, but I was preoccupied with testing job control in 3.0.6 ... If you have bindkey " " magic-space then every time you press the spacebar you get a beep, unless there happens to be an expandable history item in the word. Now, the really good thing would be for doexpandhist() to return failure only if there is a history reference but it can't be expanded, rather than failing whenever no expansion took place. It's beyond my comprehension of the interaction between zle and the history mechanism to pull that off, so I settled for making magic-space fail only if selfinsert() does [the old code didn't make sense anyway -- why store the return from selfinsert and then do nothing with it?]. Line numbers below may be off a bit, because I also got annoyed by Oliver Kiddle's patch from 6772. Gosh, I actually went one whole revision of zsh without having to either put in or maintain a local change ... Index: Src/Zle/zle_tricky.c @@ -8249,8 +8243,9 @@ { int ret; c = ' '; - ret = selfinsert(args); - return !doexpandhist(); + if (!(ret = selfinsert(args))) + doexpandhist(); + return ret; } /**/ -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com