From: "Matt Wozniski" <godlygeek@gmail.com>
To: zsh-workers@sunsite.dk
Subject: Re: PATCH: isearch match highlighting
Date: Mon, 28 Apr 2008 06:50:28 -0400 [thread overview]
Message-ID: <17393e3e0804280350h165f0466mb2776d9ff7ca03ae@mail.gmail.com> (raw)
In-Reply-To: <20080428102001.7b55074e@news01>
On Mon, Apr 28, 2008 at 5:20 AM, Peter Stephenson wrote:
> On Sun, 27 Apr 2008 21:49:01 -0400
> "Matt Wozniski" wrote:
> > Yep, works now - and looks very nice, though I wonder if we could set
> > it up in a way that would let us change the fg or bg color of the
> > text, rather than just reverse/standout/underline?
>
> I should get around to that before long. I don't think it should be too
> hard. I'd like to use standard termcap AF/AB codes for this instead of the
> hacked-in (surprise!) colors we currently use in completion, but it doesn't
> seem to be that easy to set defaults etc. that way. Maybe Geoff knows
> about this.
Excellent - I wait with bated breath; that will be even more cool. :)
> > That said, I found a regression in history-incremental-search-backward
> > that's in CVS but not 4.3.6, so my guess is that it's caused by
> > something in this patch (though I didn't back this patch out to
> > double-check that assumption - I'm not very good at working with CVS).
<snip testcase>
>
> I've seen something like this, but unfortunately I can't get it to happen
> reproducibly. Something might not be being initialised properly.
Yep, spot on - After a backspace (backward-delete-char or
vi-backward-delete-char), we pop back up to the previous search
location. If the search was failing at that location, we set skip_pos
to not try again at the current position, but if we then backspace
again to a valid state, we don't unset skip_pos - This is why it
needed two backspaces to trigger; we needed to go from a failing
state, to another failing state, to a good state that was being
treated as kinda-sorta-failed.
I think that the right fix is just unconditionally resetting skip_pos
right before we conditionally set it.
Index: Src/Zle/zle_hist.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/zle_hist.c,v
retrieving revision 1.50
diff -U7 -r1.50 zle_hist.c
--- Src/Zle/zle_hist.c 27 Apr 2008 20:01:50 -0000 1.50
+++ Src/Zle/zle_hist.c 28 Apr 2008 10:48:05 -0000
@@ -1445,14 +1445,15 @@
} else if(cmd == Th(z_vibackwarddeletechar) ||
cmd == Th(z_backwarddeletechar)) {
if (top_spot) {
get_isrch_spot(--top_spot, &hl, &pos, &pat_hl, &pat_pos,
&end_pos, &zlemetacs, &sbptr, &dir, &nomatch);
patprog = NULL;
nosearch = 1;
+ skip_pos = 0;
} else
feep = 1;
if (nomatch) {
memcpy(ibuf, nomatch == 2 ? INVALID_TEXT : FAILING_TEXT,
BAD_TEXT_LEN);
statusline = ibuf;
skip_pos = 1;
next prev parent reply other threads:[~2008-04-28 10:50 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-26 22:48 Peter Stephenson
2008-04-27 0:27 ` Matt Wozniski
2008-04-27 16:48 ` Bart Schaefer
2008-04-27 19:57 ` Peter Stephenson
2008-04-28 1:49 ` Matt Wozniski
2008-04-28 9:20 ` Peter Stephenson
2008-04-28 10:50 ` Matt Wozniski [this message]
2008-04-28 11:02 ` Peter Stephenson
2008-04-29 17:10 ` Peter Stephenson
2008-04-29 20:12 ` Matt Wozniski
2008-04-29 20:21 ` Matt Wozniski
2008-05-01 10:37 ` Peter Stephenson
2008-05-02 10:49 ` Nikolai Weibull
2008-05-02 11:14 ` Peter Stephenson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=17393e3e0804280350h165f0466mb2776d9ff7ca03ae@mail.gmail.com \
--to=godlygeek@gmail.com \
--cc=zsh-workers@sunsite.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).