diff options
author | Lars Wirzenius <liw@sequoia-pgp.org> | 2022-08-31 09:54:48 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@sequoia-pgp.org> | 2022-09-20 09:53:54 +0300 |
commit | 339af5f4fbec4620bbcdefbd14713a5570533cac (patch) | |
tree | 5b2ff02d3e277da37aa98e8f334443a36d05f8a4 /Cargo.lock | |
parent | 68f956426fdef71fe7db0d686edef5b1a2b214be (diff) |
sq: write out manual pages for sq
Generate an all-in-one manual page sq.1, and a separate manual page
for each leaf level subcommand: sq-armor.1, seq-key-generate.1, etc.
We've previously had a grouping of subcommands per top level
subcommand: all sub-subcommands of "sq key" would go into sq-key.1.
However, I found that to be hard to follow, as a reader. I prefer
either all in one, or just the one subcommand in a page.
Use custom code to generate the manual page, in sq/src/man.rs, because
I wasn't happy with clap_mangen output, and wanted something more
idiomatic. The custom code is a little specific for sq, and may or may
not be possible to use for other programs.
To trigger manual page generation, run sq with SQ_MAN set to the name
of a directory where the manual pages should be written, when running
sq. This was an easier way to do this than a new, hidden
subcommand ("sq generate-man" or something like that).
Add the roff crate as a dependency. It's used to generate troff source
code for manual pages. Generating correct troff is tricky enough that
there's no point in doing it manually.
Move the "SEE ALSO" section in the "after_help" text for "sq verify"
into the "before_help" so that it doesn't end up as plain text in the
manual page. This was an easier change than making the "sq help text
markup" parser in sq/src/man.rs understand the SEE ALSO heading.
Sponsored-by: pep.foundation
Diffstat (limited to 'Cargo.lock')
-rw-r--r-- | Cargo.lock | 23 |
1 files changed, 15 insertions, 8 deletions
@@ -433,9 +433,9 @@ dependencies = [ [[package]] name = "clap" -version = "3.2.15" +version = "3.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44bbe24bbd31a185bc2c4f7c2abe80bea13a20d57ee4e55be70ac512bdc76417" +checksum = "68d43934757334b5c0519ff882e1ab9647ac0258b47c24c4f490d78e42697fd5" dependencies = [ "atty", "bitflags", @@ -455,14 +455,14 @@ version = "3.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da92e6facd8d73c22745a5d3cbb59bdf8e46e3235c923e516527d8e81eec14a4" dependencies = [ - "clap 3.2.15", + "clap 3.2.19", ] [[package]] name = "clap_derive" -version = "3.2.15" +version = "3.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba52acd3b0a5c33aeada5cdaa3267cdc7c594a98731d4268cdc1532f4264cb4" +checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" dependencies = [ "heck", "proc-macro-error", @@ -2556,7 +2556,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f0c08002dd427499194cef0e292cfd515281777d5b9cc4c638028d2d3aebda4" dependencies = [ "anyhow", - "clap 3.2.15", + "clap 3.2.19", "serde", "serde_yaml", "textwrap 0.15.0", @@ -2564,6 +2564,12 @@ dependencies = [ ] [[package]] +name = "roff" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316" + +[[package]] name = "rpassword" version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2816,11 +2822,12 @@ dependencies = [ "buffered-reader", "cfg-if", "chrono", - "clap 3.2.15", + "clap 3.2.19", "clap_complete", "fehler", "itertools 0.10.3", "predicates", + "roff", "rpassword", "sequoia-autocrypt", "sequoia-net", @@ -3087,7 +3094,7 @@ checksum = "0b14be17e3a06a320b4d9851ef7f512bcb19e9c931cd2b2493b61b4a7e6aa6d5" dependencies = [ "anyhow", "base64", - "clap 3.2.15", + "clap 3.2.19", "env_logger 0.9.0", "file_diff", "git-testament", |