Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

console: generate man pages and shell completions #325

Open
hawkw opened this issue Apr 12, 2022 · 1 comment
Open

console: generate man pages and shell completions #325

hawkw opened this issue Apr 12, 2022 · 1 comment
Labels
C-console Crate: console. S-feature Severity: feature. This is adding a new feature.

Comments

@hawkw
Copy link
Member

hawkw commented Apr 12, 2022

What problem are you trying to solve?

It would be nice if a man page for tokio-console could be generated and installed. Similarly, it would be nice to be able to generate command completion scripts for various shells.

How should the problem be solved?

The clap_mangen and clap_complete crates can be used to generate man pages and shell completions for a clap CLI, respectively. We can use these crates to generate man pages and completions for the console.

Any alternatives you've considered?

I'm not sure the best way to distribute man pages/completions. I've seen some people generating them in a CI job and committing them to the repo when the CLI changes. This could be fine if we expect the console to be distributed primarily by package managers. However, if we expect people to get it using cargo install, I don't believe there's a nice way for cargo install to install completions or man pages. Instead, we might want to consider having subcommands in the binary itself for generating completions/man pages, so that users can cargo install the console and then install the shell completions/man pages?

How would users interact with this feature?

No response

Would you like to work on this feature?

maybe

@hawkw hawkw added S-feature Severity: feature. This is adding a new feature. C-console Crate: console. labels Apr 12, 2022
@nrskt
Copy link
Contributor

nrskt commented Apr 25, 2022

I’d like to take it.

hawkw pushed a commit that referenced this issue May 23, 2022
This PR includes adding subcommand for shell completions. Generating a man page will be done as another PR.

```
❯ tokio-console
--ascii-only            --lang                  --no-duration-colors    --retain-for            -h                      gen-config
--colorterm             --log                   --no-terminated-colors  --version               <TARGET_ADDR>           help
--help                  --no-colors             --palette               -V                      gen-completion

❯ tokio-console gen-completion
--help      --version   -V          -h          bash        elvish      fish        powershell  zsh
```

Related to #325
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-console Crate: console. S-feature Severity: feature. This is adding a new feature.
Projects
None yet
Development

No branches or pull requests

2 participants