From 3156d481feaffd2e6df6d860b980e9160b706e42 Mon Sep 17 00:00:00 2001 From: Jeffas Date: Sat, 7 Mar 2020 16:42:41 +0000 Subject: Add pinned tabs This adds the commands pin-tab and unpin-tab. Once pinned a tab lives on the left of the tabstrip and has a configurable marker, defaulting to ` before its name. --- commands/pin-tab.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 commands/pin-tab.go (limited to 'commands') diff --git a/commands/pin-tab.go b/commands/pin-tab.go new file mode 100644 index 00000000..164a68b5 --- /dev/null +++ b/commands/pin-tab.go @@ -0,0 +1,36 @@ +package commands + +import ( + "fmt" + + "git.sr.ht/~sircmpwn/aerc/widgets" +) + +type PinTab struct{} + +func init() { + register(PinTab{}) +} + +func (PinTab) Aliases() []string { + return []string{"pin-tab", "unpin-tab"} +} + +func (PinTab) Complete(aerc *widgets.Aerc, args []string) []string { + return nil +} + +func (PinTab) Execute(aerc *widgets.Aerc, args []string) error { + if len(args) != 1 { + return fmt.Errorf("Usage: %s", args[0]) + } + + switch args[0] { + case "pin-tab": + aerc.PinTab() + case "unpin-tab": + aerc.UnpinTab() + } + + return nil +} -- cgit