From 04040c928142db92d2ef2d4b43ad4701392e5ceb Mon Sep 17 00:00:00 2001 From: Sebastien Douheret Date: Tue, 6 Mar 2018 16:47:13 +0100 Subject: [PATCH] Added bash completion support. Signed-off-by: Sebastien Douheret --- conf.d/etc/bash_completion.d/xds-cli | 12 ++++++++++++ main.go | 1 + 2 files changed, 13 insertions(+) create mode 100644 conf.d/etc/bash_completion.d/xds-cli diff --git a/conf.d/etc/bash_completion.d/xds-cli b/conf.d/etc/bash_completion.d/xds-cli new file mode 100644 index 0000000..9778180 --- /dev/null +++ b/conf.d/etc/bash_completion.d/xds-cli @@ -0,0 +1,12 @@ +#! /bin/bash + +_cli_bash_autocomplete() { + local cur opts base + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + opts=$( ${COMP_WORDS[@]:0:$COMP_CWORD} --generate-bash-completion ) + COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) + return 0 + } + +complete -F _cli_bash_autocomplete xds-cli diff --git a/main.go b/main.go index 7d1f5e1..a6f8104 100644 --- a/main.go +++ b/main.go @@ -141,6 +141,7 @@ func main() { app.Metadata["version"] = AppVersion app.Metadata["git-tag"] = AppSubVersion app.Metadata["logger"] = Log + app.EnableBashCompletion = true // Create env vars help dynDesc := "\nENVIRONMENT VARIABLES:" -- 2.16.6