zsh-workers
 help / color / mirror / code / Atom feed
From: Sven Wischnowsky <wischnow@informatik.hu-berlin.de>
To: zsh-workers@sunsite.auc.dk
Subject: Re: PATCH: completion caching layer
Date: Thu, 3 Aug 2000 09:11:43 +0200 (MET DST)	[thread overview]
Message-ID: <200008030711.JAA12112@beta.informatik.hu-berlin.de> (raw)
In-Reply-To: Adam Spiers's message of Wed, 2 Aug 2000 16:01:31 +0100


Adam Spiers wrote:

> ...
>
> > > I agree entirely.  That way also I could make _perl_modules set a
> > > default style (if one is not already set) when the function is loaded,
> > > rather than each time it's invoked.  But where would it appear in the
> > > context?  My knowledge of this stuff is slightly weak, I'm afraid.
> > 
> > After the last colon:
> > 
> >   zstyle -t ":completion:${curcontext}:" ...
> >                                        ^here
> > 
> > I.e., instead of the tag (if you would use tags).
> 
> OK.  Although that doesn't solve the problem of having to set a
> default for each of the commands _perl_modules completes.  Maybe
> 
>   zstyle ':completion:::::RPMs' cache-policy _rpms_caching_policy
> 
> would work?

For use by the completion function itself? We decided some time ago
that they shouldn't set styles themselves, only look them up.

So, instead of adding what you suggest (which most probably wouldn't
work because there are other things in the context, e.g. the command
name), one would use the return value of zstyle:

  zstyle -s ":completion:${curcontext}:RPMs" cache-policy foo ||
      foo=_rpms_caching_policy

I.e., the return value of zstyle is non-zero iff the style is not set
for that context.


> Incidentally I couldn't find anything in the documentation to explain
> the difference between e.g. ::: and :*:*: in contexts.  Did I miss it?

Err. Pattern matching. `:::' matches only itself, `:*:*:' matches
`::perl:' and `::perl:argument-rest' and `:complete:perl:argument-rest' 
and `predict:complete:perl:argument-rest'.

The patterns given when defining styles are really only matched agains 
the context-strings given when looking up styles. Normal shell pattern 
matching, nothing special there. Only the sorting of the patterns is
something not used elsewhere.

Bye
 Sven


--
Sven Wischnowsky                         wischnow@informatik.hu-berlin.de


             reply	other threads:[~2000-08-03  7:12 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-08-03  7:11 Sven Wischnowsky [this message]
  -- strict thread matches above, loose matches on Subject: below --
2000-08-04  6:59 Sven Wischnowsky
2000-08-02 14:13 Sven Wischnowsky
2000-08-02 15:01 ` Adam Spiers
2000-08-03 12:21   ` Adam Spiers
2000-08-02  9:36 Sven Wischnowsky
2000-08-02 13:35 ` Adam Spiers
2000-07-27  8:00 Sven Wischnowsky
2000-08-01 16:31 ` Adam Spiers
2000-08-01 17:03   ` Bart Schaefer
2000-08-01 17:09     ` Bart Schaefer
2000-08-01 23:37     ` Adam Spiers
2000-08-02  3:53       ` Bart Schaefer
2000-07-19 14:48 Sven Wischnowsky
2000-07-26 19:53 ` Adam Spiers
2000-07-17 14:38 Adam Spiers

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=200008030711.JAA12112@beta.informatik.hu-berlin.de \
    --to=wischnow@informatik.hu-berlin.de \
    --cc=zsh-workers@sunsite.auc.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).