From 3ae031992a159fb115fcd0f5046204009cf25601 Mon Sep 17 00:00:00 2001 From: Alex Turbov Date: Thu, 24 Oct 2024 20:47:53 +0400 Subject: 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 --- Auxiliary/bash-completion/cmake | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) 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 -- cgit v0.12