feat(completions): Offer Nushell completions #6366
Open
+53
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Clap offers Nushell completions in a crate clap_complete_nushell separate from the crate clap_complete.
clap_complete::Shell and clap_complete_nushell::Nushell share the clap_complete::Generator trait.
I'm not too familiar with Rust, and all attempts to use a more direct match to common trait and call generate in one place only failed.
CompletionShell
to unify the options for our command line across theseThe completions can be used in Nushell with:
and can be set up in the env.nu and config.nu for automatic loading respectively.
Motivation and Context
Nushell can offer extensive, typed command completion, including external commands.
Starship already offers completions generation through the
completions
command, implemented through the clap library. The clap library also natively, but as a separate crate, offers to generate Nushell completions.Screenshots (if appropriate):
How Has This Been Tested?
cargo build
, nutshell commands as described above, and checking that the Nushell completions show up as expectedstarship completions -h
starship completions nushell
starship completions bash
starship completions fish
Checklist:
I have updated the documentation accordingly.- I don't see any docs about completionsI have updated the tests accordingly.- I don't see any tests about completions