4 个版本 (破坏性更新)
0.4.0 | 2021 年 11 月 28 日 |
---|---|
0.3.0 | 2020 年 11 月 14 日 |
0.2.0 | 2020 年 11 月 14 日 |
0.1.0 | 2020 年 11 月 14 日 |
#2412 在 命令行工具
440KB
83 行
CLI 完成功能
bash, zsh, fish 和 powershell 的 CLI 完成功能。
如何安装?
$ cargo install cli-completion
如何使用?
请参阅 https://github.com/clap-rs/clap#using-yaml 以编写 cli 的 YAML 文件。或者您可以参考 multipass.yaml 作为示例。
$ cli-completion --bash commands/multipass.yaml
bash 完成功能
$ cli-completion --bash xxx.yaml > xxx-completion.sh
fish 完成功能
$ cli-completion --bash xxx.yaml > xxx-completion.fish
zsh 完成功能
$ cli-completion --bash xxx.yaml > /usr/local/share/zsh/site-functions/_xxx
$ autoload -U compinit && compinit
oh-my-zsh 完成功能
$ mkdir ~/.oh-my-zsh/custom/plugins/xxx
$ cli-completion --zsh xxx.yaml > ~/.oh-my-zsh/custom/plugins/xxx/_xxx
别忘了在 ~/.zshrc 文件中启用 xxx 插件!
powershell 完成功能
$ cli-completion --powershell xxx.yaml > xxx-completion.ps
参考资料
- clap-rs: https://github.com/clap-rs/clap
- cli-completion crate: https://crates.io/crates/cli-completion
- 命令行界面指南: https://clig.dev/
依赖
~2MB
~31K SLoC