summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Turbov <i.zaufi@gmail.com>2024-10-24 16:47:53 (GMT)
committerAlex Turbov <i.zaufi@gmail.com>2024-10-27 17:08:12 (GMT)
commit3ae031992a159fb115fcd0f5046204009cf25601 (patch)
tree822c5312154429c4e68972146f8045686bdaac62
parent81f49865f2445dacf7f32a1ea82ae9341336f578 (diff)
downloadCMake-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/cmake18
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