coreboot/util/intelp2m/cli/completion.go
Maxim Polyakov 2e9dd0ade2 util/intelp2m: Update cli options
- Redesign the options format.
- Add automatic completion of arguments for bash.
  [complete -C `pwd`/intelp2m ./intelp2m] to enable

TEST: make test = PASS

Change-Id: I08ff379b99b018b1099aa5d70fea47026bc84045
Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/70310
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-03 21:43:17 +00:00

22 lines
370 B
Go

package cli
import (
"flag"
"fmt"
"os"
"strings"
)
func UseComplete() bool {
if _, ok := os.LookupEnv("COMP_LINE"); ok {
argument := os.Args[2]
argument = strings.TrimLeft(argument, "-")
flag.VisitAll(func(f *flag.Flag) {
if argument == "" || strings.HasPrefix(f.Name, argument) {
fmt.Println("-" + f.Name)
}
})
return true
}
return false
}