]> Sergey Matveev's repositories - public-inbox.git/commitdiff
help: document new search prefixes
authorEric Wong <e@80x24.org>
Tue, 13 Sep 2016 01:18:30 +0000 (01:18 +0000)
committerEric Wong <e@80x24.org>
Tue, 13 Sep 2016 01:19:13 +0000 (01:19 +0000)
Support (and document) 'a:' after all, as "mairix -h" uses it,
so this should reduce the learning curve for mairix users.

lib/PublicInbox/Search.pm
lib/PublicInbox/WwwText.pm

index 0c05677216f3e3e3887ffadfa18ff4d963e5e234..8da30c19c9d87661e4f4a0b7f8435f1d69d59c81 100644 (file)
@@ -67,13 +67,11 @@ my %prob_prefix = (
        tc => 'XTO XCC',
        c => 'XCC',
        tcf => 'XTO XCC A',
        tc => 'XTO XCC',
        c => 'XCC',
        tcf => 'XTO XCC A',
+       a => 'XTO XCC A',
        b => 'XNQ XQUOT',
        bs => 'XNQ XQUOT S',
        n => 'XFN',
 
        b => 'XNQ XQUOT',
        bs => 'XNQ XQUOT S',
        n => 'XFN',
 
-       # n.b.: leaving out "a:" alias for "tcf:" even though
-       # mairix supports it.  It is only mentioned in passing in mairix(1)
-       # and the extra two letters are not significantly longer.
        q => 'XQUOT',
        nq => 'XNQ',
 
        q => 'XQUOT',
        nq => 'XNQ',
 
@@ -83,24 +81,26 @@ my %prob_prefix = (
 
 # not documenting m: and mid: for now, the using the URLs works w/o Xapian
 our @HELP = (
 
 # not documenting m: and mid: for now, the using the URLs works w/o Xapian
 our @HELP = (
-       's:' => <<EOF,
-match within Subject only  e.g. s:"a quick brown fox"
-This is a probabilistic search with support for stemming
-and wildcards '*'
-EOF
+       's:' => 'match within Subject  e.g. s:"a quick brown fox"',
        'd:' => <<EOF,
 date range as YYYYMMDD  e.g. d:19931002..20101002
 Open-ended ranges such as d:19931002.. and d:..20101002
        'd:' => <<EOF,
 date range as YYYYMMDD  e.g. d:19931002..20101002
 Open-ended ranges such as d:19931002.. and d:..20101002
-are also supported.
+are also supported
 EOF
 EOF
+       'b:' => 'match within message body, including text attachments',
+       'nq:' => 'match non-quoted text within message body',
+       'quot:' => 'match quoted text within message body',
+       'n:' => 'match filename of attachment(s)',
+       't:' => 'match within the To header',
+       'c:' => 'match within the Cc header',
+       'f:' => 'match within the From header',
+       'a:' => 'match within the To, Cc, and From headers',
+       'tc:' => 'match within the To and Cc headers',
+       'bs:' => 'match within the Subject and body',
 );
 );
-# TODO: (from mairix, some of these are maybe)
-# b (body), f (From:), c (Cc:), n (attachment), t (To:)
-# tc (To:+Cc:), bs (body + Subject), tcf (To: +Cc: +From:)
-#
-# Non-mairix:
+chomp @HELP;
+# TODO:
 # df (filenames from diff)
 # df (filenames from diff)
-# nq (non-quoted body)
 # da (diff a/ removed lines)
 # db (diff b/ added lines)
 
 # da (diff a/ removed lines)
 # db (diff b/ added lines)
 
@@ -238,11 +238,12 @@ sub qp {
                        /\Aserial:(\w+):/ or next;
                        my $pfx = $1;
                        push @$user_pfx, "$pfx:", <<EOF;
                        /\Aserial:(\w+):/ or next;
                        my $pfx = $1;
                        push @$user_pfx, "$pfx:", <<EOF;
-alternate serial number  e.g. $pfx:12345
+alternate serial number  e.g. $pfx:12345 (boolean)
 EOF
                        # gmane => XGMANE
                        $qp->add_boolean_prefix($pfx, 'X'.uc($pfx));
                }
 EOF
                        # gmane => XGMANE
                        $qp->add_boolean_prefix($pfx, 'X'.uc($pfx));
                }
+               chomp @$user_pfx;
        }
 
        while (my ($name, $prefix) = each %prob_prefix) {
        }
 
        while (my ($name, $prefix) = each %prob_prefix) {
index b8beb97c6d5983e9c319a2f7733a4e232fc7f884..b0f262cd08d823af81944b5484b63d849c913570 100644 (file)
@@ -134,7 +134,7 @@ search
     in other search engines.
 
     We also support search prefixes to limit the scope of the
     in other search engines.
 
     We also support search prefixes to limit the scope of the
-    search to certain fields using prefixes.
+    search to certain fields.
 
     Prefixes supported in this installation include:
 
 
     Prefixes supported in this installation include:
 
@@ -142,6 +142,10 @@ EOF
                _srch_prefix($srch, $txt);
 
                $$txt .= <<EOF;
                _srch_prefix($srch, $txt);
 
                $$txt .= <<EOF;
+
+    Most prefixes are probabilistic, meaning they support stemming
+    and wildcards ('*').  Ranges (such as 'd:') and boolean prefixes
+    do not support stemming or wildcards.
     The upstream Xapian query parser documentation fully explains
     the query syntax:
 
     The upstream Xapian query parser documentation fully explains
     the query syntax: