Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: r problem
- X-seq: zsh-workers 15809
- From: Wayne Davison <wayned@xxxxxxxxxxxxxxxxxxxxx>
- To: Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx>
- Subject: Re: r problem
- Date: Fri, 14 Sep 2001 23:26:24 -0700 (PDT)
- Cc: Zsh Workers <zsh-workers@xxxxxxxxxx>
- In-reply-to: <1010915044927.ZM986@xxxxxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
On Sat, 15 Sep 2001, Bart Schaefer wrote:
> It's just a hash lookup:
Excellent. That saves me some poking around that I hadn't gotten around
to doing. Here's a patch that seems to fix things up quite well.
..wayne..
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---
Index: Src/hist.c
--- Src/hist.c 2001/09/13 18:19:11 1.32
+++ Src/hist.c 2001/09/15 06:22:08
@@ -989,14 +989,20 @@
if (isset(HISTNOSTORE)) {
char *b = getjobtext(prog, NULL);
- if (*b == 'b' && strncmp(b, "builtin ", 8) == 0)
+ int saw_builtin;
+ if (*b == 'b' && strncmp(b,"builtin ",8) == 0) {
b += 8;
- if (*b == 'h' && strncmp(b, "history", 7) == 0
- && (!b[7] || b[7] == ' '))
+ saw_builtin = 1;
+ } else
+ saw_builtin = 0;
+ if (*b == 'h' && strncmp(b,"history",7) == 0 && (!b[7] || b[7] == ' ')
+ && (saw_builtin || !shfunctab->getnode(shfunctab,"history")))
return 1;
- if (*b == 'r' && (!b[1] || b[1] == ' '))
+ if (*b == 'r' && (!b[1] || b[1] == ' ')
+ && (saw_builtin || !shfunctab->getnode(shfunctab,"r")))
return 1;
- if (*b == 'f' && b[1] == 'c' && b[2] == ' ' && b[3] == '-') {
+ if (*b == 'f' && b[1] == 'c' && b[2] == ' ' && b[3] == '-'
+ && (saw_builtin || !shfunctab->getnode(shfunctab,"fc"))) {
b += 3;
do {
if (*++b == 'l')
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---
Messages sorted by:
Reverse Date,
Date,
Thread,
Author