From 4d7625c8a0516652f27f3465a696df30c931d3ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Wed, 21 Jul 2021 15:34:13 +0200 Subject: [PATCH] Allow shell-completing multiple `--json` fields separated by commas --- pkg/cmdutil/json_flags.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/cmdutil/json_flags.go b/pkg/cmdutil/json_flags.go index 0ce5a8f50..7343554fc 100644 --- a/pkg/cmdutil/json_flags.go +++ b/pkg/cmdutil/json_flags.go @@ -29,13 +29,15 @@ func AddJSONFlags(cmd *cobra.Command, exportTarget *Exporter, fields []string) { _ = cmd.RegisterFlagCompletionFunc("json", func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) { var results []string - if idx := strings.IndexRune(toComplete, ','); idx >= 0 { + var prefix string + if idx := strings.LastIndexByte(toComplete, ','); idx >= 0 { + prefix = toComplete[:idx+1] toComplete = toComplete[idx+1:] } toComplete = strings.ToLower(toComplete) for _, f := range fields { if strings.HasPrefix(strings.ToLower(f), toComplete) { - results = append(results, f) + results = append(results, prefix+f) } } sort.Strings(results)