From: Simon Josefsson <jas@extundo.com>
Cc: ding@gnus.org
Subject: Re: specifying the charset of the query string with nnir/imap
Date: Sun, 23 Sep 2001 12:05:00 +0200 [thread overview]
Message-ID: <ilubsk2uss3.fsf@barbar.josefsson.org> (raw)
In-Reply-To: <m2y9n6k4gh.fsf@deisui.bug.org> (Daiki Ueno's message of "Sun, 23 Sep 2001 11:48:14 +0900")
Daiki Ueno <ueno@unixuser.org> writes:
> I'm using nnir 1.72.
Maybe it would be nice to have search functionality built into Gnus.
How about using a backend interface for the interface? Then you don't
need to specify the backend to search with nnir, which I found a bit
cumbersome and inflexible.
We could keep the current simple interface -- press `G G' to search
the current group, or the currently processed marked groups for a
simple string -- but also add a fancy "advanced query" form using all
kind of weird widgets.
What about the following backend interface? IMAP can implement this,
and I guess nnfolder could implement at least the `text' primitive
easily using `search-forward', and nnml could implement it using
`grep'. Of course, nnml and nnfolder could use Glimpse, Swish++ etc
as well if so configured.
`(nnchoke-request-search-capability &optional GROUP SERVER)'
This function should return the list of search functions which the
server (or group, if GROUP is non-nil) supports. The search
functions include `and', `or', `not', `text', `to', `from',
`subject', `cc', `head', `header', `body' and `charset'. If
searching is not supported, the empty list should be returned. It
is sufficient to implement the `text' search function to get a
useful search interface, the other functions are only used by the
advanced query interface.
There should be no result data returned.
`(nnchoke-request-search-group GROUP QUERY &optional SERVER)'
This function should search the group for articles matching QUERY,
returning a range of articles that match the query (or nil if no
articles match). The QUERY is a flexible expression looking
something like:
(and (subject "Something")
(text "Something else"))
The meaning of the primitives is hopefully obvious, however some
details:
`header'
The `header' primitive takes two arguments, one string
indicating the header to search and one to indicate the
string to search for. E.g. `(header "bcc" "myself")'.
`head'
On other other hand, the `head' primitive only takes one
argument and searches the entire header.
`charset'
This is a pseduo-primitive, used to wrap other search
primitives that should search using a certain character set.
E.g. `(charset "iso-8859-1" (subject "räksmörgås"))'.
There should be no result data returned.
`(nnchoke-request-search-server QUERY &optional SERVER)'
This function should search all groups in the server, returning a
alist containing `group range' elements where GROUP is the
non-fully qualified name of the group where the RANGE articles
match the search query (or nil if no articles match). See
`nnchoke-request-search-group' for the syntax of QUERY. This
function is typically only implemented if the backend can
efficiently search all groups.
There should be no result data returned.
next prev parent reply other threads:[~2001-09-23 10:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-09-23 2:48 Daiki Ueno
2001-09-23 10:05 ` Simon Josefsson [this message]
2001-09-23 12:19 ` Kai Großjohann
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=ilubsk2uss3.fsf@barbar.josefsson.org \
--to=jas@extundo.com \
--cc=ding@gnus.org \
/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.
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).