Skip to content

feat(cli): complete --config and --color before command#16780

Merged
weihanglo merged 1 commit intorust-lang:masterfrom
nspin:pr/bash-complete-config-color-before-cmd
Mar 22, 2026
Merged

feat(cli): complete --config and --color before command#16780
weihanglo merged 1 commit intorust-lang:masterfrom
nspin:pr/bash-complete-config-color-before-cmd

Conversation

@nspin
Copy link
Copy Markdown
Contributor

@nspin nspin commented Mar 22, 2026

What does this PR try to resolve?

Split from #16245 (see #16245 (comment)).

Currently, cargo.bashcomp.sh supports completing values for --color and --config only in cases where they appear after the subcommand. This PR add support for completing values for these two flags when they appear before the subcommand.

How to test and review this PR?

In a Bash shell, run:

source src/etc/cargo.bashcomp.sh

Before this patch, the following behaves as expected (suggests colors or paths):

cargo build --co<tab>
cargo build --config <tab>

but the following does not behave as expected (colors or paths are not suggested):

cargo --config <tab>
cargo --color <tab>

With this patch applied, all of the following behave as expected:

cargo --config <tab>
cargo --color <tab>
cargo build --co<tab>
cargo build --config <tab>

@rustbot rustbot added A-completions Area: shell completions S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 22, 2026
@rustbot
Copy link
Copy Markdown
Collaborator

rustbot commented Mar 22, 2026

r? @epage

rustbot has assigned @epage.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: @ehuss, @epage, @weihanglo
  • @ehuss, @epage, @weihanglo expanded to ehuss, epage, weihanglo
  • Random selection from ehuss, epage, weihanglo

@nspin nspin changed the title feat(cli): complete --config and --color before command feat(cli): complete --config and --color before command Mar 22, 2026
Comment thread src/etc/cargo.bashcomp.sh
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is nice. I feel like there are more global options that we might want to have such kind of completions. Not a blocker though.

@weihanglo weihanglo added this pull request to the merge queue Mar 22, 2026
Merged via the queue into rust-lang:master with commit 1576a6c Mar 22, 2026
29 checks passed
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 22, 2026
rust-bors Bot pushed a commit to rust-lang/rust that referenced this pull request Mar 28, 2026
Update cargo submodule

10 commits in e84cb639edfea2c42efd563b72a9be0cc5de6523..ddb37b06aba4dcf791fde56dd9fcf73ae7d05f7f
2026-03-21 01:27:07 +0000 to 2026-03-27 15:01:07 +0000
- fix(resolver): Better match rustc in error styling (rust-lang/cargo#16795)
- missing -Zjson-target-spec error: mention that this is a cargo flag (rust-lang/cargo#16793)
- Update changelog for 1.94.1 (rust-lang/cargo#16789)
- test(build): Make it easier to review `build.warnings` behavior (rust-lang/cargo#16788)
- test(build): Cover more behavior of `build.warnings` (rust-lang/cargo#16785)
- chore(deps): bump curl-sys from 0.4.83 to 0.4.86 (rust-lang/cargo#16786)
- Warn when installing with a non-default toolchain (rust-lang/cargo#16131)
- feat(cli): Add support for completing `--config` argument values with `native-completions` (rust-lang/cargo#16249)
- feat(cli): complete `--config` and `--color` before command (rust-lang/cargo#16780)
- chore(deps): bump rustls-webpki from 0.103.9 to 0.103.10 (rust-lang/cargo#16778)

r? ghost
rust-bors Bot pushed a commit to rust-lang/rust that referenced this pull request Mar 31, 2026
Update cargo submodule



11 commits in e84cb639edfea2c42efd563b72a9be0cc5de6523..888f675344eb1cf2308fd53183e667bdd2c58e51
2026-03-21 01:27:07 +0000 to 2026-03-30 16:59:25 +0000
- chore: bump to [email protected] (rust-lang/cargo#16808)
- fix(resolver): Better match rustc in error styling (rust-lang/cargo#16795)
- missing -Zjson-target-spec error: mention that this is a cargo flag (rust-lang/cargo#16793)
- Update changelog for 1.94.1 (rust-lang/cargo#16789)
- test(build): Make it easier to review `build.warnings` behavior (rust-lang/cargo#16788)
- test(build): Cover more behavior of `build.warnings` (rust-lang/cargo#16785)
- chore(deps): bump curl-sys from 0.4.83 to 0.4.86 (rust-lang/cargo#16786)
- Warn when installing with a non-default toolchain (rust-lang/cargo#16131)
- feat(cli): Add support for completing `--config` argument values with `native-completions` (rust-lang/cargo#16249)
- feat(cli): complete `--config` and `--color` before command (rust-lang/cargo#16780)
- chore(deps): bump rustls-webpki from 0.103.9 to 0.103.10 (rust-lang/cargo#16778)
@rustbot rustbot added this to the 1.96.0 milestone Mar 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-completions Area: shell completions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants