From: Bart Schaefer <schaefer@brasslantern.com>
To: zsh-users@sunsite.dk
Subject: Re: Tip of the day: previous command output
Date: Sun, 22 Aug 2004 18:10:57 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.61.0408221604100.5997@toltec.zanshin.com> (raw)
In-Reply-To: <20040822205801.GM7841@ay.vinc17.org>
On Sun, 22 Aug 2004, Vincent Lefevre wrote:
> I mean that instead of expanding to filenames, one expands
> to lines from $kept (but only those that match the pattern).
Aha. So, akin to the case where you've provided a prefix, but instead
you've provided a pattern.
This is almost exactly the same as the _insert_kept widget, so I'll just
edit it to include a test on the $WIDGET name. Like so:
_insert_kept() {
(( $#kept )) || return 1
local action
zstyle -s :completion:$curcontext insert-kept action
if [[ -n $action ]]
then compstate[insert]=$action
fi
if [[ $WIDGET = *expand* ]]
then compadd -U ${(M)kept:#${~words[CURRENT]}}
else compadd -a kept
fi
}
zle -C insert-kept-result complete-word _generic
zle -C expand-kept-result complete-word _generic
zstyle ':completion:*-kept-result:*' completer _insert_kept
This obviously isn't as sophisticated as _expand, which knows how to deal
with all sorts of things besides just patterns. You might also find that
the call to compadd -U needs to have some of the -i -I -P -S options
thrown in to avoid obliterating parts of the word that you didn't mean
to obliterate; I've shown only the most simple solution.
next prev parent reply other threads:[~2004-08-23 1:13 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-19 8:58 Jesper Holmberg
2004-08-19 15:20 ` Bart Schaefer
2004-08-19 16:42 ` Andy Spiegl
2004-08-19 17:16 ` Bart Schaefer
2004-08-20 9:30 ` Andy Spiegl
2004-08-20 11:13 ` Vincent Lefevre
2004-08-20 12:12 ` Andy Spiegl
2004-08-20 14:50 ` Vincent Lefevre
2004-08-21 4:25 ` Bart Schaefer
2004-08-21 5:58 ` Bart Schaefer
2004-08-21 17:06 ` Bart Schaefer
2004-08-22 20:58 ` Vincent Lefevre
2004-08-23 1:10 ` Bart Schaefer [this message]
2004-08-23 13:51 ` Vincent Lefevre
2004-08-22 21:21 ` Vincent Lefevre
2004-08-22 23:03 ` Bart Schaefer
2004-08-23 13:00 ` Vincent Lefevre
2004-08-23 15:21 ` Bart Schaefer
2004-08-23 19:14 ` Vincent Lefevre
2004-08-26 23:16 ` Andy Spiegl
2004-08-27 0:43 ` Bart Schaefer
2004-08-27 10:21 ` Andy Spiegl
2004-08-31 15:03 ` zzapper
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=Pine.LNX.4.61.0408221604100.5997@toltec.zanshin.com \
--to=schaefer@brasslantern.com \
--cc=zsh-users@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).