about summary refs log tree commit diff stats
path: root/commands/msgview/pipe.go
diff options
context:
space:
mode:
Diffstat (limited to 'commands/msgview/pipe.go')
-rw-r--r--commands/msgview/pipe.go55
1 files changed, 0 insertions, 55 deletions
diff --git a/commands/msgview/pipe.go b/commands/msgview/pipe.go
deleted file mode 100644
index 56c125b..0000000
--- a/commands/msgview/pipe.go
+++ /dev/null
@@ -1,55 +0,0 @@
-package msgview
-
-import (
-	"encoding/base64"
-	"errors"
-	"fmt"
-	"io"
-	"mime/quotedprintable"
-	"strings"
-
-	"git.sr.ht/~sircmpwn/aerc/commands"
-	"git.sr.ht/~sircmpwn/aerc/widgets"
-)
-
-type Pipe struct{}
-
-func init() {
-	register(Pipe{})
-}
-
-func (_ Pipe) Aliases() []string {
-	return []string{"pipe"}
-}
-
-func (_ Pipe) Complete(aerc *widgets.Aerc, args []string) []string {
-	return nil
-}
-
-func (_ Pipe) Execute(aerc *widgets.Aerc, args []string) error {
-	if len(args) < 2 {
-		return errors.New("Usage: :pipe <cmd> [args...]")
-	}
-
-	mv := aerc.SelectedTab().(*widgets.MessageViewer)
-	p := mv.CurrentPart()
-
-	p.Store.FetchBodyPart(p.Msg.Uid, p.Index, func(reader io.Reader) {
-		// email parts are encoded as 7bit (plaintext), quoted-printable, or base64
-		if strings.EqualFold(p.Part.Encoding, "base64") {
-			reader = base64.NewDecoder(base64.StdEncoding, reader)
-		} else if strings.EqualFold(p.Part.Encoding, "quoted-printable") {
-			reader = quotedprintable.NewReader(reader)
-		}
-
-		term, err := commands.QuickTerm(aerc, args[1:], reader)
-		if err != nil {
-			aerc.PushError(" " + err.Error())
-			return
-		}
-		name := fmt.Sprintf("%s <%s/[%d]", args[1], p.Msg.Envelope.Subject, p.Index)
-		aerc.NewTab(term, name)
-	})
-
-	return nil
-}