1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
| | =head1 NAME
lei - an overview of lei
=head1 DESCRIPTION
L<lei(1)> is a local email interface for public-inbox. This document
provides some basic examples.
=head1 LEI STORE
L<lei-init(1)> initializes writable local storage based on
L<public-inbox-v2-format(5)>.
=head2 EXAMPLES
=over
=item $ lei import mboxrd:t.mbox
Import the messages from an mbox into the local storage.
=back
=head1 EXTERNALS
In addition to the above store, lei can make read-only queries to
"externals": inboxes and external indices. An external can be
registered by passing a URL or local path to L<lei-add-external(1)>.
For existing local paths, the external needs to be indexed with
L<public-inbox-index(1)> (in the case of a regular inbox) or
L<public-inbox-extindex(1)> (in the case of an external index).
=head2 EXAMPLES
=over
=item $ lei add-external https://public-inbox.org/meta/
Add a remote external for public-inbox's inbox.
=item $ lei add-external --mirror https://public-inbox.org/meta/ path
Clone L<https://public-inbox.org/meta/> to C<path>, index it with
L<public-inbox-index(1)>, and add it as a local external.
=back
=head1 SEARCHING
The L<lei-q(1)> command searches the local store and externals. The
search prefixes match those available via L<public-inbox-httpd(1)>.
=head2 EXAMPLES
=over
=item $ lei q s:lei s:skeleton
Search for messages whose subject includes "lei" and "skeleton".
=item $ lei q -t s:lei s:skeleton
Do the same, but also report unmatched messages that are in the same
thread as a matched message.
=item $ lei q -t -o mboxcl2:t.mbox --mua=mutt s:lei s:skeleton
Write mboxcl2-formatted results to t.mbox and enter mutt to view the
file by invoking C<mutt -f %f>.
=back
=head1 PERFORMANCE NOTES
L<Inline::C> is recommended for performance. To enable it, create
C<~/.cache/public-inbox/inline-c/>.
If Socket::MsgHdr is installed (libsocket-msghdr-perl in Debian), the
first invocation of lei starts a daemon, reducing the startup cost of
for future invocations (which is particularly important for Bash
completion).
=head1 BASH COMPLETION
Preliminary Bash completion for lei is provided in
C<contrib/completion/>. Contributions adding support for other
shells, as well as improvements to the existing Bash completion, are
welcome.
=head1 CONTACT
Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>
The mail archives are hosted at L<https://public-inbox.org/meta/>
and L<http://hjrcffqmbrq6wope.onion/meta/>
=head1 COPYRIGHT
Copyright 2021 all contributors L<mailto:meta@public-inbox.org>
License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>
|