Commit Graph

19 Commits

Author SHA1 Message Date
Justus Winter
9b00fa43da
Lint CLI help texts. 2024-12-11 17:56:28 +01:00
Neal H. Walfield
0382001a65
Only show global options in the top-level help output.
- Fixes #202.
2024-02-21 12:28:32 +01:00
Justus Winter
e131ea102e
Use the README.md as top-level crate documentation.
- Previously, we used a concatenation of all subcommand help
    outputs, but this is unwieldy nowadays and an artifact from back
    when we didn't have proper manual pages and a way to host them
    nicely.  Drop this.
2024-01-10 18:00:33 +01:00
Justus Winter
0ea5ef9fad
Write assets like manual pages to a predictable location.
- Fixes #45.
2024-01-05 15:57:05 +01:00
Justus Winter
2580e26ba5
Refactor asset creation. 2024-01-05 15:45:54 +01:00
Justus Winter
f81d6f09af
Use our custom manual page generator during build time.
- Previously, there were two ways of generating manual pages.
    We used to use the upstream clap_mangen crate, but decided to
    develop our own custom formatter.  However, we didn't quite switch
    to it, keeping the old mechanism in place and adding our new
    solution to sq, activated by a hidden environment variable.

  - This patch drops the upstream formatter, and uses the custom
    formatter during build time.  First, our custom code can be
    tweaked easily to suit our needs, and switching back to the
    upstream solution is easy enough should it better suit our needs.
    Second, generating manual pages at build time should help
    cross-building environments.
2024-01-05 13:56:32 +01:00
Justus Winter
1ebdd0c904
Rework generation of documentation. 2024-01-03 16:54:44 +01:00
Justus Winter
c55070e269
Rework generation of man pages. 2024-01-03 16:50:08 +01:00
Justus Winter
f5eafe9291
Rework generation of shell completions. 2024-01-03 16:42:53 +01:00
Justus Winter
cfc6fdd43a
Fix generation of shell completions and man pages.
- Fixes #163.
2024-01-03 16:06:48 +01:00
Justus Winter
ed5137657b
Fix usage generation.
- Fix escaping of help output.
2024-01-03 15:34:23 +01:00
Justus Winter
101309c88a
Improve the interactive-use test with the new IsTerminal. 2023-11-30 10:22:15 +01:00
Justus Winter
4d40c983a5
Fix unstable cli warning.
- The heuristic got broken because newer versions of
    terminal_size::terminal_size consider the PTY, not
    necessarily stdout.

  - Fixes ab8df96e5b.
2023-11-29 17:54:40 +01:00
Neal H. Walfield
0a09fa6d75
Move sq_cli to cli
- Rename the `sq_cli` module to `cli`.
2023-10-23 16:05:51 +02:00
David Runge
3ea5afe4e3
Add instructions on man page creation to README
- Add instructions on how to build the `sq` executable and its shell
 completions.
- Add information on how to generate the man pages using the `SQ_MAN`
  environment variable.
- Disable printing of info about `clap_mangen` generated man pages,
  since they still lack features and are partially incorrect.
2023-06-12 16:14:50 +02:00
Gabriel de Perthuis
2c57cd77d7
Move subplot tests to a feature so subplot doesn't affect most builds
Installing sq from crates.io (cargo install sequoia-sq) was broken by a
semver-compatible change in Tera.  Running cargo test uses the lockfile
and isn't affected.

This has the side benefit of reducing dependency bloat, the baseline
depends on check/build/build --release but in the case of a non-release
build the dependency count goes from 403 to 315.

Fixes #2.

The subplot/tera issue was likely triggered by this change in tera
1.18: <https://github.com/Keats/tera/pull/799>.
2023-04-19 10:54:05 +02:00
Neal H. Walfield
0b33c9c603
Generate man pages using clap_mangen
- `clap_mangen` generates the man pages directly from `Clap`, and is
    the successor to `manpage-maker`.

  - Use it, and delete the checked-in (and stale) man pages.
2023-04-08 19:36:50 +02:00
Justus Winter
c1c1198897
Improve generated documentation. 2023-03-06 18:05:21 +01:00
Justus Winter
b89c172c1d
Reincarnation commit.
- This implementation has been moved from the Sequoia repository to
    its own repository.  To inspect the history, either look at the
    Sequoia repository, or graft it onto this repository like this:

      $ git remote add sequoia https://gitlab.com/sequoia-pgp/sequoia
      $ git fetch sequoia 82eb0d7b240d137141fc0aaaa3dff1685bb11864
      $ git replace --graft <THIS-COMMIT> 82eb0d7b240d137141fc0aaaa3dff1685bb11864
2023-02-21 12:43:43 +01:00