From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3587 invoked by alias); 18 Nov 2011 15:08:01 -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: 16584 Received: (qmail 27098 invoked from network); 18 Nov 2011 15:07:57 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) 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 autolearn=ham version=3.3.2 Received-SPF: none (ns1.primenet.com.au: domain at closedmail.com does not designate permitted sender hosts) From: Bart Schaefer Message-id: <111118070726.ZM20770@torch.brasslantern.com> Date: Fri, 18 Nov 2011 07:07:26 -0800 In-reply-to: <4EC65484.5040603@mandic.com.br> Comments: In reply to Daniel Serodio "Re: Auto-correct and newly-added commands" (Nov 18, 10:50am) References: <4EC15E90.6020703@mandic.com.br> <111114201608.ZM11290@torch.brasslantern.com> <4EC65484.5040603@mandic.com.br> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: zsh-users@zsh.org Subject: Re: Auto-correct and newly-added commands MIME-version: 1.0 Content-type: text/plain; charset=us-ascii On Nov 18, 10:50am, Daniel Serodio wrote: } Subject: Re: Auto-correct and newly-added commands } } Bart Schaefer wrote: } > On Nov 14, 4:31pm, Daniel Serodio (lists) wrote: } > } } > } It it possible to have zsh automatically run "rehash" after I reply no } > } to an auto-correct prompt, so it "learns" this new command? } > } > That would certainly seem logical. Also it seems strange to load up } > the command tables and check them for proper spellings when the word } > that is being checked is not in the command position to begin with. } Hmm, maybe my explanation wasn't clear (or I don't understand your } reply), but I only have problem with real commands (in the beginning of } the line), not with their arguments. Or did you mention "words not in } the command position" from reviewing the code and not my explanation? The latter (that's the first hunk of the patch). } > What this patch does is reset the incremental path search in the event } > the correction is rejected. That allows whatever hashing options the } > user has specified to kick in at the time the path is searched during } > command execution, rather than having to test them all here. } This sounds like what I need, but when I tried to apply this patch, it } failed (both on zsh 4.3.12 and on a fresh git clone). I'm not sure why it would have failed on 4.3.12, but it's already been committed to sourceforge CVS so a fresh git of the very latest probably won't need to have it applied. What was the failure message from patch? Did you use "patch -p0" ? } Where should I apply this patch? For your purposes you only need the second hunk with two lines added. Try manually deleting the first hunk and then applying the second: } > @@ -2621,6 +2623,8 @@ } > fflush(shout); } > zbeep(); } > x = getquery("nyae \t", 0); } > + if (cmd&& x == 'n') } > + pathchecked = path; } > } else } > x = 'n'; } > } else