user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
* [PATCH 0/8] doc: lei manpages, round 4
@ 2021-03-29  3:11 Kyle Meyer
  2021-03-29  3:11 ` [PATCH 1/8] doc lei-q: fix typo in -tt description Kyle Meyer
                   ` (8 more replies)
  0 siblings, 9 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

This series updates the lei manpages, continuing from
<20210227180328.28057-1-kyle@kyleam.com>.  It covers changes up to the
current tip of master (c9ff20cbef45d32e..80f4192574065106).

  [1/8] doc lei-q: fix typo in -tt description
  [2/8] doc lei: note --stdin shortcut in synopses
  [3/8] doc lei: drop an unnecessary to-do comment
  [4/8] doc lei: don't render most to-do comments
  [5/8] doc lei: update manpages with new options
  [6/8] doc lei: add manpages for new commands
  [7/8] doc lei overview: note that lei-init is usually unnecessary
  [8/8] doc lei overview: better explain routes into local store

 Documentation/lei-add-external.pod |   1 +
 Documentation/lei-blob.pod         | 109 +++++++++++++++++++++++++++++
 Documentation/lei-import.pod       |   2 +-
 Documentation/lei-ls-label.pod     |  43 ++++++++++++
 Documentation/lei-mark.pod         |  58 +++++++++++++++
 Documentation/lei-overview.pod     |  32 ++++++++-
 Documentation/lei-p2q.pod          |  79 +++++++++++++++++++++
 Documentation/lei-q.pod            |  13 +++-
 Documentation/lei.pod              |  14 +++-
 Documentation/txt2pre              |   4 ++
 MANIFEST                           |   4 ++
 Makefile.PL                        |   5 +-
 12 files changed, 355 insertions(+), 9 deletions(-)
 create mode 100644 Documentation/lei-blob.pod
 create mode 100644 Documentation/lei-ls-label.pod
 create mode 100644 Documentation/lei-mark.pod
 create mode 100644 Documentation/lei-p2q.pod


base-commit: 80f4192574065106ae72a7a73ee0f02ebd86708a
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/8] doc lei-q: fix typo in -tt description
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 2/8] doc lei: note --stdin shortcut in synopses Kyle Meyer
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

---
 Documentation/lei-q.pod | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/lei-q.pod b/Documentation/lei-q.pod
index e878157d..446a82c6 100644
--- a/Documentation/lei-q.pod
+++ b/Documentation/lei-q.pod
@@ -84,7 +84,7 @@ Augment output destination instead of clobbering it.
 Return all messages in the same thread as the actual match(es).
 
 Using this twice (C<-tt>) sets the C<flagged> (AKA "important")
-on messages which were actual messages.  This is useful to distinguish
+on messages which were actual matches.  This is useful to distinguish
 messages which were direct hits from messages which were merely part
 of the same thread.
 
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 2/8] doc lei: note --stdin shortcut in synopses
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
  2021-03-29  3:11 ` [PATCH 1/8] doc lei-q: fix typo in -tt description Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 3/8] doc lei: drop an unnecessary to-do comment Kyle Meyer
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

---
 Documentation/lei-import.pod | 2 +-
 Documentation/lei-q.pod      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/lei-import.pod b/Documentation/lei-import.pod
index 7f4e3745..acc4f776 100644
--- a/Documentation/lei-import.pod
+++ b/Documentation/lei-import.pod
@@ -6,7 +6,7 @@ lei-import - one-time import of messages into local store
 
 lei import [OPTIONS] LOCATION [LOCATION...]
 
-lei import [OPTIONS] --stdin
+lei import [OPTIONS] (--stdin|-)
 
 =head1 DESCRIPTION
 
diff --git a/Documentation/lei-q.pod b/Documentation/lei-q.pod
index 446a82c6..cb1227fb 100644
--- a/Documentation/lei-q.pod
+++ b/Documentation/lei-q.pod
@@ -6,7 +6,7 @@ lei-q - search for messages matching terms
 
 lei q [OPTIONS] TERM [TERM...]
 
-lei q [OPTIONS] --stdin
+lei q [OPTIONS] (--stdin|-)
 
 =head1 DESCRIPTION
 
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 3/8] doc lei: drop an unnecessary to-do comment
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
  2021-03-29  3:11 ` [PATCH 1/8] doc lei-q: fix typo in -tt description Kyle Meyer
  2021-03-29  3:11 ` [PATCH 2/8] doc lei: note --stdin shortcut in synopses Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 4/8] doc lei: don't render most to-do comments Kyle Meyer
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

When a new command is implemented, it is probably clear that it should
be added to lei.pod, but either way, having a to-do comment in lei.pod
isn't likely to help.
---
 Documentation/lei.pod | 2 --
 1 file changed, 2 deletions(-)

diff --git a/Documentation/lei.pod b/Documentation/lei.pod
index e1502122..36abe513 100644
--- a/Documentation/lei.pod
+++ b/Documentation/lei.pod
@@ -66,8 +66,6 @@ store and configured externals are
 
 =back
 
-TODO: Add lei-show (and perhaps others) once implemented.
-
 Other subcommands include
 
 =over
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 4/8] doc lei: don't render most to-do comments
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (2 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 3/8] doc lei: drop an unnecessary to-do comment Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 5/8] doc lei: update manpages with new options Kyle Meyer
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

The lei manpages have a number of to-dos, but with the exception of
the lei-q's -tt warning, none of them seem worth displaying to the
reader (and some might not be worth addressing at all).
---
 Documentation/lei-add-external.pod | 1 +
 Documentation/lei-q.pod            | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/Documentation/lei-add-external.pod b/Documentation/lei-add-external.pod
index 3bc0ba83..47158146 100644
--- a/Documentation/lei-add-external.pod
+++ b/Documentation/lei-add-external.pod
@@ -15,6 +15,7 @@ C<extindex.<name>.topdir> value in ~/.public-inbox/config.
 
 =head1 OPTIONS
 
+=for comment
 TODO: mention curl options?
 
 =over
diff --git a/Documentation/lei-q.pod b/Documentation/lei-q.pod
index cb1227fb..6f67c277 100644
--- a/Documentation/lei-q.pod
+++ b/Documentation/lei-q.pod
@@ -12,10 +12,12 @@ lei q [OPTIONS] (--stdin|-)
 
 Search for messages across the lei store and externals.
 
+=for comment
 TODO: Give common prefixes, or at least a description/reference.
 
 =head1 OPTIONS
 
+=for comment
 TODO: mention curl options?
 
 =over
@@ -40,6 +42,7 @@ the destination.  C<json> is used for the default destination
 (stdout), and C<maildir> is used for an existing directory or
 non-existing path.
 
+=for comment
 TODO: Provide description of formats?
 
 Default: -
@@ -98,6 +101,7 @@ C<none>.
 
 Default: C<content>
 
+=for comment
 TODO: Provide description of strategies?
 
 =item --[no-]remote
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 5/8] doc lei: update manpages with new options
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (3 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 4/8] doc lei: don't render most to-do comments Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 6/8] doc lei: add manpages for new commands Kyle Meyer
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

---
 Documentation/lei-q.pod | 5 +++++
 Documentation/lei.pod   | 4 ++++
 2 files changed, 9 insertions(+)

diff --git a/Documentation/lei-q.pod b/Documentation/lei-q.pod
index 6f67c277..787c51bf 100644
--- a/Documentation/lei-q.pod
+++ b/Documentation/lei-q.pod
@@ -82,6 +82,11 @@ doesn't point to stdout, nothing otherwise.
 
 Augment output destination instead of clobbering it.
 
+=item --no-import-before
+
+Do not importing keywords before writing to an existing output
+destination.
+
 =item -t, --threads
 
 Return all messages in the same thread as the actual match(es).
diff --git a/Documentation/lei.pod b/Documentation/lei.pod
index 36abe513..0b81b9f3 100644
--- a/Documentation/lei.pod
+++ b/Documentation/lei.pod
@@ -23,6 +23,10 @@ Available in public-inbox 1.7.0+.
 
 =over
 
+=item -c NAME=VALUE
+
+Override configuration C<NAME> to C<VALUE>.
+
 =item -C DIR
 
 Change current working directory to the specified directory before
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 6/8] doc lei: add manpages for new commands
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (4 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 5/8] doc lei: update manpages with new options Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:25   ` Eric Wong
  2021-03-29  3:11 ` [PATCH 7/8] doc lei overview: note that lei-init is usually unnecessary Kyle Meyer
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

---
 Documentation/lei-blob.pod     | 109 +++++++++++++++++++++++++++++++++
 Documentation/lei-ls-label.pod |  43 +++++++++++++
 Documentation/lei-mark.pod     |  58 ++++++++++++++++++
 Documentation/lei-overview.pod |  21 +++++++
 Documentation/lei-p2q.pod      |  79 ++++++++++++++++++++++++
 Documentation/lei.pod          |   8 +++
 Documentation/txt2pre          |   4 ++
 MANIFEST                       |   4 ++
 Makefile.PL                    |   5 +-
 9 files changed, 329 insertions(+), 2 deletions(-)
 create mode 100644 Documentation/lei-blob.pod
 create mode 100644 Documentation/lei-ls-label.pod
 create mode 100644 Documentation/lei-mark.pod
 create mode 100644 Documentation/lei-p2q.pod

diff --git a/Documentation/lei-blob.pod b/Documentation/lei-blob.pod
new file mode 100644
index 00000000..ecdd1e99
--- /dev/null
+++ b/Documentation/lei-blob.pod
@@ -0,0 +1,109 @@
+=head1 NAME
+
+lei-blob - display a git blob, reconstructing from mail if necessary
+
+=head1 SYNOPSIS
+
+lei blob [OPTIONS] OID
+
+=head1 DESCRIPTION
+
+Display a git blob.  The blob may correspond to a message from the
+local store, an existing blob in the current repository, or a
+not-yet-created blob in the current repository that can be
+reconstructed from a message.
+
+=head1 OPTIONS
+
+=over
+
+=item --git-dir=DIR
+
+Specify an additional .git/ directory to scan.  This option may be
+given multiple times.
+
+=item --no-cwd
+
+Do not look in the git repository of the current working directory.
+
+=item --no-mail
+
+Do not look in mail storage for C<OID>.  This is implied by
+C<--oid-a>, C<--path-a>, and C<--path-b>.
+
+=item -A OID-A, --oid-a=OID-A
+
+=item -a PATH-A, --path-a=PATH-A
+
+=item -b PATH-B, --path-b=PATH-B
+
+Provide pre-image object ID, pre-image pathname, or post-image
+pathname as a hint for reconstructing C<OID>.
+
+=for comment
+TODO: The below options are shared with lei-q.  Any good approaches to
+not repeating the text?
+
+=item --[no-]remote
+
+Whether to include results requiring network access.  When local
+externals are configured, C<--remote> must be explicitly passed to
+enable reporting of results from remote externals.
+
+=item --no-local
+
+Limit operations to those requiring network access.
+
+=item --no-external
+
+Don't include results from externals.
+
+=item -I LOCATION, --include=LOCATION
+
+Include specified external in search.  This option may be given
+multiple times.
+
+=item --exclude=LOCATION
+
+Exclude specified external from search.  This option may be given
+multiple times.
+
+=item --only=LOCATION
+
+Use only the specified external for search.  This option may be given
+multiple times, in which case the search uses only the specified set.
+
+=item --no-import-remote
+
+Disable the default behavior of memoizing remote messages into the
+local store.
+
+=item -v, --verbose
+
+Provide more feedback on stderr.
+
+=item --torsocks=auto|no|yes, --no-torsocks
+
+Whether to wrap L<git(1)> and L<curl(1)> commands with torsocks.
+
+Default: C<auto>
+
+=back
+
+=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>
+
+
+=head1 SEE ALSO
+
+L<lei-add-external(1)>
diff --git a/Documentation/lei-ls-label.pod b/Documentation/lei-ls-label.pod
new file mode 100644
index 00000000..0b4e8769
--- /dev/null
+++ b/Documentation/lei-ls-label.pod
@@ -0,0 +1,43 @@
+=head1 NAME
+
+lei-ls-label - list labels
+
+=head1 SYNOPSIS
+
+lei ls-label [OPTIONS]
+
+=head1 DESCRIPTION
+
+List all known message labels ("mailboxes" in JMAP terminology).
+
+=head1 OPTIONS
+
+=over
+
+=item -z, -0
+
+Use C<\0> (NUL) instead of newline (CR) to delimit lines.
+
+=item -q, --quiet
+
+Suppress feedback messages.
+
+=back
+
+=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>
+
+
+=head1 SEE ALSO
+
+L<lei-add-external(1)>
diff --git a/Documentation/lei-mark.pod b/Documentation/lei-mark.pod
new file mode 100644
index 00000000..8ef1dce2
--- /dev/null
+++ b/Documentation/lei-mark.pod
@@ -0,0 +1,58 @@
+=head1 NAME
+
+lei-mark - set/unset metadata on messages
+
+=head1 SYNOPSIS
+
+lei mark [OPTIONS] FILE [FILE...] METADATA [METADATA...]
+
+lei mark [OPTIONS] (-|--stdin) METADATA [METADATA...]
+
+=head1 DESCRIPTION
+
+Set or unset volatile metadata on messages.  In JMAP terms, "volatile
+metadata" includes "mailboxes" (analogous to a folder or label) and a
+restricted set of "keywords".  This supported keywords are the
+combination of system keywords (seen, answered, flagged, and draft),
+which map to Maildir flags and mbox Status/X-Status headers, as well
+as reserved keywords (forwarded, phishing, junk, and notjunk).
+
+To add a label or keyword, prefix it with "+L:" and "+kw:",
+respectively.  To remove a label or keyword, use "-L:" or "-kw:".  For
+example, "+kw:flagged" would set the "flagged" keyword for the
+specified messages, and "-L:INBOX" would remove the "INBOX" label.
+
+=head1 OPTIONS
+
+=over
+
+=item -F MAIL_FORMAT, --in-format=MAIL_FORMAT
+
+Message input format: C<eml>, C<mboxrd>, C<mboxcl2>, C<mboxcl>, or
+C<mboxo>.
+
+Default: C<eml>
+
+=item -q, --quiet
+
+Suppress feedback messages.
+
+=back
+
+=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>
+
+
+=head1 SEE ALSO
+
+L<lei-add-external(1)>
diff --git a/Documentation/lei-overview.pod b/Documentation/lei-overview.pod
index c3379caa..7c7337ab 100644
--- a/Documentation/lei-overview.pod
+++ b/Documentation/lei-overview.pod
@@ -20,6 +20,17 @@ L<public-inbox-v2-format(5)>.
 
 Import the messages from an mbox into the local storage.
 
+=item $ lei blob 59ec517f9
+
+Show message with the git blob OID of 59ec517f9.  If a message with
+that OID isn't found, check if the current git repository has the
+blob, trying to reconstruct it from a message if needed.
+
+=item $ lei blob 59ec517f9 | lei mark - -F eml +kw:flagged +L:next
+
+Set the "flagged" keyword and "next" label on the message with the
+blob OID of 59ec517f9.
+
 =back
 
 =head1 EXTERNALS
@@ -69,6 +80,16 @@ thread as a matched message.
 Write mboxcl2-formatted results to t.mbox and enter mutt to view the
 file by invoking C<mutt -f %f>.
 
+=item $ lei q kw:flagged L:next
+
+Search for all flagged messages that also have a "next" label.
+
+=item $ lei p2q HEAD | lei q --stdin -tt -o mdir
+
+Search for messages that have post-image git blob IDs that match those
+of the current repository's HEAD commit, writing them to the Maildir
+directory "mdir" and flagging the messages that were an exact match.
+
 =back
 
 =head1 PERFORMANCE NOTES
diff --git a/Documentation/lei-p2q.pod b/Documentation/lei-p2q.pod
new file mode 100644
index 00000000..cc342bd5
--- /dev/null
+++ b/Documentation/lei-p2q.pod
@@ -0,0 +1,79 @@
+=head1 NAME
+
+lei-p2q - use a patch to generate a lei-q query
+
+=head1 SYNOPSIS
+
+lei p2q [OPTIONS] (FILE|COMMIT)
+
+lei p2q [OPTIONS] (--stdin|-)
+
+=head1 DESCRIPTION
+
+Given a patch, create a query that can be fed on stdin to L<lei-q(1)>.
+This is useful for mapping the patch to associated messages of an
+inbox.
+
+The patch can be provided on stdin or as a file.  Alternatively, when
+an argument is given that does not point to an existing file, it is
+taken as a reference to a commit in the current repository, and
+L<git-format-patch(1)> is used to generate the patch.
+
+=head1 OPTIONS
+
+=over
+
+=item -w PREFIX[,PREFIX], --want=PREFIX[,PREFIX]
+
+Search prefixes to use.  C<dfpost> (post-image git blob ID) and C<dfn>
+(file names from the diff) are the most useful.  Other available
+values are C<dfa>, C<dfb>, C<dfctx>, C<dfhh>, and C<dfpre>.
+
+=for comment
+TODO: Put a table of prefixes somewhere and reference that (at least
+here and in lei-q)?
+
+Appending an integer to C<dfpost> or C<dfpre> indicates a minimum ID
+length, and the generated query will be for that value up through the
+default abbreviation length.  For example, if the repository's
+C<core.abbrev> is set to C<auto> and git calculates the default
+abbreviation length as 7, C<dfpost6> will expand a post-image blob ID
+of e7b4b32 (seven characters) into C<dfpost:e7b4b32 OR dfpost:e7b4b3>.
+
+This option may be given multiple times.
+
+Default: C<dfpost7>
+
+=item --stdin
+
+Read patch from stdin.
+
+=item --debug
+
+Dump output that shows the information collected for every prefix.
+This information can be useful for seeing how a patch is processed,
+but the format should not be considered stable.
+
+=item -q, --quiet
+
+Suppress feedback messages.
+
+=back
+
+=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>
+
+
+=head1 SEE ALSO
+
+L<lei-add-external(1)>
diff --git a/Documentation/lei.pod b/Documentation/lei.pod
index 0b81b9f3..6c8cfc3d 100644
--- a/Documentation/lei.pod
+++ b/Documentation/lei.pod
@@ -46,6 +46,8 @@ Subcommands for initializing and managing local, writable storage:
 
 =item * L<lei-import(1)>
 
+=item * L<lei-mark(1)>
+
 =back
 
 The following subcommands can be used to manage and inspect external
@@ -66,6 +68,10 @@ store and configured externals are
 
 =over
 
+=item * L<lei-blob(1)>
+
+=item * L<lei-p2q(1)>
+
 =item * L<lei-q(1)>
 
 =back
@@ -80,6 +86,8 @@ Other subcommands include
 
 =item * L<lei-daemon-pid(1)>
 
+=item * L<lei-ls-label(1)>
+
 =back
 
 =head1 FILES
diff --git a/Documentation/txt2pre b/Documentation/txt2pre
index 244dc50c..bfffdef1 100755
--- a/Documentation/txt2pre
+++ b/Documentation/txt2pre
@@ -12,6 +12,7 @@ use PublicInbox::Hval qw(ascii_html);
 my %xurls;
 for (qw[lei(1)
 	lei-add-external(1)
+	lei-blob(1)
 	lei-config(1)
 	lei-daemon-kill(1)
 	lei-daemon-pid(1)
@@ -19,7 +20,10 @@ for (qw[lei(1)
 	lei-import(1)
 	lei-init(1)
 	lei-ls-external(1)
+	lei-ls-label(1)
+	lei-mark(1)
 	lei-overview(7)
+	lei-p2q(1)
 	lei-q(1)
 	public-inbox.cgi(1)
 	public-inbox-compact(1)
diff --git a/MANIFEST b/MANIFEST
index 913ce55c..3d521a64 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -22,6 +22,7 @@ Documentation/flow.txt
 Documentation/hosted.txt
 Documentation/include.mk
 Documentation/lei-add-external.pod
+Documentation/lei-blob.pod
 Documentation/lei-config.pod
 Documentation/lei-daemon-kill.pod
 Documentation/lei-daemon-pid.pod
@@ -29,7 +30,10 @@ Documentation/lei-forget-external.pod
 Documentation/lei-import.pod
 Documentation/lei-init.pod
 Documentation/lei-ls-external.pod
+Documentation/lei-ls-label.pod
+Documentation/lei-mark.pod
 Documentation/lei-overview.pod
+Documentation/lei-p2q.pod
 Documentation/lei-q.pod
 Documentation/lei.pod
 Documentation/marketing.txt
diff --git a/Makefile.PL b/Makefile.PL
index 8165e601..cdb67214 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -44,8 +44,9 @@ $v->{-m1} = [ map {
 		}
 	} @EXE_FILES,
 	qw(
-	lei-add-external lei-config lei-daemon-kill lei-daemon-pid
-	lei-forget-external lei-import lei-init lei-ls-external lei-q)];
+	lei-add-external lei-blob lei-config lei-daemon-kill lei-daemon-pid
+	lei-forget-external lei-import lei-init lei-ls-external lei-ls-label
+	lei-mark lei-p2q lei-q)];
 $v->{-m5} = [ qw(public-inbox-config public-inbox-v1-format
 		public-inbox-v2-format public-inbox-extindex-format) ];
 $v->{-m7} = [ qw(lei-overview public-inbox-overview public-inbox-tuning
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 7/8] doc lei overview: note that lei-init is usually unnecessary
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (5 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 6/8] doc lei: add manpages for new commands Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:11 ` [PATCH 8/8] doc lei overview: better explain routes into local store Kyle Meyer
  2021-03-29  3:18 ` [PATCH 0/8] doc: lei manpages, round 4 Eric Wong
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

cf. https://public-inbox.org/meta/20210325083207.GA30551@dcvr
---
 Documentation/lei-overview.pod | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/Documentation/lei-overview.pod b/Documentation/lei-overview.pod
index 7c7337ab..55e84254 100644
--- a/Documentation/lei-overview.pod
+++ b/Documentation/lei-overview.pod
@@ -9,8 +9,10 @@ provides some basic examples.
 
 =head1 LEI STORE
 
-L<lei-init(1)> initializes writable local storage based on
-L<public-inbox-v2-format(5)>.
+lei has writable local storage based on L<public-inbox-v2-format(5)>.
+Commands will automatically initialize the store behind the scenes if
+needed, but you can call L<lei-init(1)> directly if you want to use a
+store location other than the default C<$XDG_DATA_HOME/lei/store>.
 
 =head2 EXAMPLES
 
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 8/8] doc lei overview: better explain routes into local store
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (6 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 7/8] doc lei overview: note that lei-init is usually unnecessary Kyle Meyer
@ 2021-03-29  3:11 ` Kyle Meyer
  2021-03-29  3:18 ` [PATCH 0/8] doc: lei manpages, round 4 Eric Wong
  8 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:11 UTC (permalink / raw)
  To: meta

---
 Documentation/lei-overview.pod | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/lei-overview.pod b/Documentation/lei-overview.pod
index 55e84254..f74a228a 100644
--- a/Documentation/lei-overview.pod
+++ b/Documentation/lei-overview.pod
@@ -14,6 +14,11 @@ Commands will automatically initialize the store behind the scenes if
 needed, but you can call L<lei-init(1)> directly if you want to use a
 store location other than the default C<$XDG_DATA_HOME/lei/store>.
 
+The L<lei-import(1)> command provides the primary interface for
+importing messages into the local storage.  In addition, other
+commands, such as L<lei-q(1)> and L<lei-blob(1)>, use the local store
+to memoize messages from remotes.
+
 =head2 EXAMPLES
 
 =over
-- 
2.31.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/8] doc: lei manpages, round 4
  2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
                   ` (7 preceding siblings ...)
  2021-03-29  3:11 ` [PATCH 8/8] doc lei overview: better explain routes into local store Kyle Meyer
@ 2021-03-29  3:18 ` Eric Wong
  8 siblings, 0 replies; 12+ messages in thread
From: Eric Wong @ 2021-03-29  3:18 UTC (permalink / raw)
  To: Kyle Meyer; +Cc: meta

Thanks, pushed as commit 165eabbffd15866f581ca374cb37fbf3c07989a5

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 6/8] doc lei: add manpages for new commands
  2021-03-29  3:11 ` [PATCH 6/8] doc lei: add manpages for new commands Kyle Meyer
@ 2021-03-29  3:25   ` Eric Wong
  2021-03-29  3:35     ` Kyle Meyer
  0 siblings, 1 reply; 12+ messages in thread
From: Eric Wong @ 2021-03-29  3:25 UTC (permalink / raw)
  To: Kyle Meyer; +Cc: meta

Kyle Meyer <kyle@kyleam.com> wrote:
> +=for comment

> +TODO: The below options are shared with lei-q.  Any good approaches to
> +not repeating the text?

I don't know about natively in POD.  Perhaps just a list of
switches and a pointer to lei-q(1)?

Or maybe we generate some .pod files via cat + sh

  cat lei-blob.pod.in lei-q-common.pod.in >lei-blob.pod

I don't know if depending on cpp or some other widely-installed
preprocessor is worth it.

> +=for comment
> +TODO: Put a table of prefixes somewhere and reference that (at least
> +here and in lei-q)?

Yes, probably.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 6/8] doc lei: add manpages for new commands
  2021-03-29  3:25   ` Eric Wong
@ 2021-03-29  3:35     ` Kyle Meyer
  0 siblings, 0 replies; 12+ messages in thread
From: Kyle Meyer @ 2021-03-29  3:35 UTC (permalink / raw)
  To: Eric Wong; +Cc: meta

Eric Wong writes:

> Kyle Meyer <kyle@kyleam.com> wrote:
>> +=for comment
>
>> +TODO: The below options are shared with lei-q.  Any good approaches to
>> +not repeating the text?
>
> I don't know about natively in POD.  Perhaps just a list of
> switches and a pointer to lei-q(1)?

Yeah, this sounds like the way to go to me.  I'll make a note to do it
for the next round.

Thanks.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2021-03-29  3:35 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-29  3:11 [PATCH 0/8] doc: lei manpages, round 4 Kyle Meyer
2021-03-29  3:11 ` [PATCH 1/8] doc lei-q: fix typo in -tt description Kyle Meyer
2021-03-29  3:11 ` [PATCH 2/8] doc lei: note --stdin shortcut in synopses Kyle Meyer
2021-03-29  3:11 ` [PATCH 3/8] doc lei: drop an unnecessary to-do comment Kyle Meyer
2021-03-29  3:11 ` [PATCH 4/8] doc lei: don't render most to-do comments Kyle Meyer
2021-03-29  3:11 ` [PATCH 5/8] doc lei: update manpages with new options Kyle Meyer
2021-03-29  3:11 ` [PATCH 6/8] doc lei: add manpages for new commands Kyle Meyer
2021-03-29  3:25   ` Eric Wong
2021-03-29  3:35     ` Kyle Meyer
2021-03-29  3:11 ` [PATCH 7/8] doc lei overview: note that lei-init is usually unnecessary Kyle Meyer
2021-03-29  3:11 ` [PATCH 8/8] doc lei overview: better explain routes into local store Kyle Meyer
2021-03-29  3:18 ` [PATCH 0/8] doc: lei manpages, round 4 Eric Wong

Code repositories for project(s) associated with this inbox:

	https://80x24.org/public-inbox.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).