aboutsummaryrefslogtreecommitdiffstats
path: root/commands/terminal
diff options
context:
space:
mode:
authorGregory Mullen <greg@cmdline.org>2019-06-27 10:33:11 -0700
committerDrew DeVault <sir@cmpwn.com>2019-06-29 14:24:19 -0400
commit2a0961701c4cabecc53d134ed1782e5612e64580 (patch)
tree57952ac82fb7104113ca7fc0e25dc3d225f77ea7 /commands/terminal
parent177651bddab145c8a56cdfeb0d57b5fd95a6d0e2 (diff)
downloadaerc-2a0961701c4cabecc53d134ed1782e5612e64580.tar.gz
Implement basic tab completion support
Tab completion currently only works on commands. Contextual completion will be added in the future.
Diffstat (limited to 'commands/terminal')
-rw-r--r--commands/terminal/close.go14
-rw-r--r--commands/terminal/terminal.go4
2 files changed, 14 insertions, 4 deletions
diff --git a/commands/terminal/close.go b/commands/terminal/close.go
index 0ea7a5a9..35c47997 100644
--- a/commands/terminal/close.go
+++ b/commands/terminal/close.go
@@ -6,11 +6,21 @@ import (
"git.sr.ht/~sircmpwn/aerc/widgets"
)
+type Close struct{}
+
func init() {
- register("close", CommandClose)
+ register(Close{})
+}
+
+func (_ Close) Aliases() []string {
+ return []string{"close"}
+}
+
+func (_ Close) Complete(aerc *widgets.Aerc, args []string) []string {
+ return nil
}
-func CommandClose(aerc *widgets.Aerc, args []string) error {
+func (_ Close) Execute(aerc *widgets.Aerc, args []string) error {
if len(args) != 1 {
return errors.New("Usage: close")
}
diff --git a/commands/terminal/terminal.go b/commands/terminal/terminal.go
index fb1583f9..710d7967 100644
--- a/commands/terminal/terminal.go
+++ b/commands/terminal/terminal.go
@@ -8,9 +8,9 @@ var (
TerminalCommands *commands.Commands
)
-func register(name string, cmd commands.AercCommand) {
+func register(cmd commands.Command) {
if TerminalCommands == nil {
TerminalCommands = commands.NewCommands()
}
- TerminalCommands.Register(name, cmd)
+ TerminalCommands.Register(cmd)
}