moonrepo / moon

A build system and monorepo management tool for the web ecosystem, written in Rust.
https://moonrepo.dev/moon
MIT License
2.85k stars 156 forks source link

[feat] Dynamic Bash/Fish tab completion for CLI #1455

Open GarthDB opened 5 months ago

GarthDB commented 5 months ago

Is your feature request related to a problem? Please describe.

It can be tricky to remember all package names and tasks when using the CLI. This results in me digging through files or trying to guess.

Describe the solution you'd like

A tab completion function, similar to this git-completion.bash script that would dynamically use the data in moon.yml files.

Describe alternatives you've considered

I'm not sure there is an alternative.

Additional context

If this already exists I was having a hard time finding it, so maybe I'm using the wrong keywords.

milesj commented 5 months ago

@GarthDB We have moon completions but that's just for the built-in commands. I'm assuming you want it to also auto-complete all the available tasks/projects/etc? If so, it's blocked on this currently (unless we build our own engine): https://github.com/clap-rs/clap/issues/3166