diff options
author | Robin Jarry <robin@jarry.cc> | 2023-10-22 23:23:18 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-10-28 19:25:10 +0200 |
commit | abe228b14d97d8d47e8ff4406de387fac45cfe68 (patch) | |
tree | 56117403d1ae32d7253f86bab01a944a3cf225b9 /commands/compose/send.go | |
parent | 30851656591293ed2e19340ab78c937855a11143 (diff) | |
download | aerc-abe228b14d97d8d47e8ff4406de387fac45cfe68.tar.gz |
commands: use completion from go-opt
Implement command completion with complete struct field tags from the
get-opt library introduced earlier.
Changelog-changed: Improved command completion.
Signed-off-by: Robin Jarry <robin@jarry.cc>
Reviewed-by: Koni Marti <koni.marti@gmail.com>
Tested-by: Moritz Poldrack <moritz@poldrack.dev>
Tested-by: Inwit <inwit@sindominio.net>
Diffstat (limited to 'commands/compose/send.go')
-rw-r--r-- | commands/compose/send.go | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/commands/compose/send.go b/commands/compose/send.go index e3672471..6f905628 100644 --- a/commands/compose/send.go +++ b/commands/compose/send.go @@ -28,8 +28,8 @@ import ( ) type Send struct { - Archive string `opt:"-a" action:"ParseArchive" metavar:"flat|year|month"` - CopyTo string `opt:"-t"` + Archive string `opt:"-a" action:"ParseArchive" metavar:"flat|year|month" complete:"CompleteArchive"` + CopyTo string `opt:"-t" complete:"CompleteFolders"` } func init() { @@ -40,19 +40,12 @@ func (Send) Aliases() []string { return []string{"send"} } -func (Send) Options() string { - return "a:t:" +func (*Send) CompleteArchive(arg string) []string { + return commands.CompletionFromList(msg.ARCHIVE_TYPES, arg) } -func (s Send) CompleteOption(r rune, term string) []string { - if r == 't' { - return commands.GetFolders([]string{term}) - } - return nil -} - -func (Send) Complete(args []string) []string { - return nil +func (*Send) CompleteFolders(arg string) []string { + return commands.GetFolders(arg) } func (s *Send) ParseArchive(arg string) error { |