3 lei-q - search for messages matching terms
7 lei q [OPTIONS] TERM [TERM...]
9 lei q [OPTIONS] (--stdin|-)
13 Search for messages across the lei store and externals.
16 TODO: Give common prefixes, or at least a description/reference.
21 TODO: mention curl options?
27 Read search terms from stdin.
29 =item --output=MFOLDER
33 =item --mfolder=MFOLDER
35 Warning: this clobbers and overwrites the output destination unless
36 L</--augment> is specified.
38 Destination for results (e.g., C</tmp/results-Maildir>,
39 C<imaps://user@mail.example.com/INBOX.test>, or
40 C<mboxcl2:/tmp/results-mboxcl2>). The prefix may be a supported protocol:
41 C<imap://> or C<imaps://>. URLs requiring
42 authentication must use L<netrc(5)> and/or L<git-credential(1)> to
43 fill in the username and password.
45 The prefix can instead specify the format of the output: C<maildir>,
46 C<mboxrd>, C<mboxcl2>, C<mboxcl>, C<mboxo>, C<json>, C<jsonl>, or
47 C<concatjson>. When a format isn't specified, it's chosen based on
48 the destination. C<json> is used for the default destination
49 (stdout), and C<maildir> is used for an existing directory or
53 TODO: Provide description of formats?
55 Default: C<-> (stdout)
61 Format of results. This option exists as a convenient way to specify
62 the format for the default stdout destination. Using a C<format:>
63 prefix with the C<--output> destination is preferred otherwise.
67 Pretty print C<json> or C<concatjson> output. If stdout is opened to
68 a tty and used as the C<--output> destination, C<--pretty> is enabled
73 A command to run on C<--output> Maildir or mbox (e.g., C<mutt -f %f>).
74 For a subset of MUAs known to accept a mailbox via C<-f>, COMMAND can
75 be abbreviated to the name of the program: C<mutt>, C<mailx>, C<mail>,
78 =item --alert=COMMAND[,COMMAND...]
80 Run C<COMMAND> after writing to output. C<:WINCH> indicates to send
81 C<SIGWINCH> to the C<--mua> process. C<:bell> indicates to print a
82 bell code. Any other value is interpreted as a command to execute as
85 This option may be given multiple times.
87 Default: C<:WINCH,:bell> when C<--mua> is specified and C<--output>
88 doesn't point to stdout, nothing otherwise.
94 Augment output destination instead of clobbering it.
96 =item --no-import-before
98 Do not importing keywords before writing to an existing output
105 Return all messages in the same thread as the actual match(es).
107 Using this twice (C<-tt>) sets the C<flagged> (AKA "important")
108 on messages which were actual matches. This is useful to distinguish
109 messages which were direct hits from messages which were merely part
112 TODO: Warning: this flag may become persistent and saved in
113 lei/store unless an MUA unflags it! (Behavior undecided)
115 =item --dedupe=STRATEGY
119 Strategy for deduplicating messages: C<content>, C<oid>, C<mid>, or
125 TODO: Provide description of strategies?
129 Whether to include results requiring network access. When local
130 externals are configured, C<--remote> must be explicitly passed to
131 enable reporting of results from remote externals.
135 Limit operations to those requiring network access.
139 Don't include results from externals.
141 =item --include=LOCATION
145 Include specified external in search. This option may be given
148 =item --exclude=LOCATION
150 Exclude specified external from search. This option may be given
153 =item --only=LOCATION
155 Use only the specified external for search. This option may be given
156 multiple times, in which case the search uses only the specified set.
162 Do not match locations using C<*?> wildcards and C<[]> ranges. This
163 option applies to C<--include>, C<--exclude>, and C<--only>.
165 =item --no-import-remote
167 Disable the default behavior of memoizing remote messages into the
172 L<mbox(5)> locking method(s) to use: C<dotlock>, C<fcntl>, C<flock> or
175 Default: fcntl,dotlock
183 Limit the number of matches.
187 =item --offset=NUMBER
189 Shift start of search results.
197 Reverse the results. Note that this applies before C<--limit>.
203 Order the results by KEY. Valid keys are C<received>, C<relevance>,
212 Provide more feedback on stderr.
218 Suppress feedback messages.
220 =item --torsocks=auto|no|yes
224 Whether to wrap L<git(1)> and L<curl(1)> commands with torsocks.
232 Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>
234 The mail archives are hosted at L<https://public-inbox.org/meta/>
235 and L<http://hjrcffqmbrq6wope.onion/meta/>
239 Copyright 2021 all contributors L<mailto:meta@public-inbox.org>
241 License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>
245 L<lei-add-external(1)>,
246 L<Xapian::QueryParser Syntax|https://xapian.org/docs/queryparser.html>