diff options
author | Alex Turbov <i.zaufi@gmail.com> | 2024-10-24 16:47:53 (GMT) |
---|---|---|
committer | Alex Turbov <i.zaufi@gmail.com> | 2024-10-27 17:08:12 (GMT) |
commit | 3ae031992a159fb115fcd0f5046204009cf25601 (patch) | |
tree | 822c5312154429c4e68972146f8045686bdaac62 | |
parent | 81f49865f2445dacf7f32a1ea82ae9341336f578 (diff) | |
download | CMake-3ae031992a159fb115fcd0f5046204009cf25601.zip CMake-3ae031992a159fb115fcd0f5046204009cf25601.tar.gz CMake-3ae031992a159fb115fcd0f5046204009cf25601.tar.bz2 |
bash-completion: Complete a workflow name after the --workflow option
Update bash completion for commit b80aa1d3a3 (preset: Easier command
line interface for Workflow Presets, 2024-09-30, v3.31.0-rc1~17^2).
Issue: #26270
-rw-r--r-- | Auxiliary/bash-completion/cmake | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Auxiliary/bash-completion/cmake b/Auxiliary/bash-completion/cmake index 13b59e0..3c30d34 100644 --- a/Auxiliary/bash-completion/cmake +++ b/Auxiliary/bash-completion/cmake @@ -201,6 +201,24 @@ _cmake() COMPREPLY=( $( compgen -W "$presets" -- "$quoted" ) ) return ;; + --workflow) + local quoted + printf -v quoted %q "$cur" + # Options allowed right after `--workflow` + local workflow_options='--preset --list-presets --fresh' + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W "$workflow_options" -- "$quoted" ) ) + else + local presets=$( cmake --list-presets=workflow 2>/dev/null | + grep -o "^ \".*\"" | sed \ + -e "s/^ //g" \ + -e "s/\"//g" \ + -e 's/ /\\\\ /g' ) + COMPREPLY=( $( compgen -W "$presets $workflow_options" -- "$quoted" ) ) + fi + return + ;; esac if ($is_old_completion || $is_init_completion); then |