From 1fbce012ed85f385be4add710c2de5bb09c81998 Mon Sep 17 00:00:00 2001 From: Reto Brunner Date: Sat, 11 Apr 2020 04:12:38 +0200 Subject: msg/archive: complete the possible options --- commands/commands.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'commands/commands.go') diff --git a/commands/commands.go b/commands/commands.go index 39720bf..0c761d1 100644 --- a/commands/commands.go +++ b/commands/commands.go @@ -128,6 +128,21 @@ func GetFolders(aerc *widgets.Aerc, args []string) []string { return out } +// CompletionFromList provides a convenience wrapper for commands to use in the +// Complete function. It simply matches the items provided in valid +func CompletionFromList(valid []string, args []string) []string { + out := make([]string, 0) + if len(args) == 0 { + return valid + } + for _, v := range valid { + if hasCaseSmartPrefix(v, args[0]) { + out = append(out, v) + } + } + return out +} + func GetLabels(aerc *widgets.Aerc, args []string) []string { if len(args) == 0 { return aerc.SelectedAccount().Labels() -- cgit v1.2.3