Implement basic tab completion support

Tab completion currently only works on commands. Contextual completion
will be added in the future.
This commit is contained in:
Gregory Mullen 2019-06-27 10:33:11 -07:00 committed by Drew DeVault
commit 2a0961701c
47 changed files with 598 additions and 154 deletions
commands/msg

View file

@ -18,12 +18,21 @@ import (
"git.sr.ht/~sircmpwn/aerc/widgets"
)
type reply struct{}
func init() {
register("reply", Reply)
register("forward", Reply)
register(reply{})
}
func Reply(aerc *widgets.Aerc, args []string) error {
func (_ reply) Aliases() []string {
return []string{"reply", "forward"}
}
func (_ reply) Complete(aerc *widgets.Aerc, args []string) []string {
return nil
}
func (_ reply) Execute(aerc *widgets.Aerc, args []string) error {
opts, optind, err := getopt.Getopts(args, "aq")
if err != nil {
return err