M cmd/mb/main.go +11 -15
@@ 11,7 11,7 @@ import (
"strings"
mb "bitbucket.org/telesto/mailbox"
- mh "bitbucket.org/telesto/mailbox/mh"
+ "bitbucket.org/telesto/mailbox/mh"
)
var missingParams = errors.New("missing parameters")
@@ 43,6 43,7 @@ func main() {
os.Stdout.WriteString("Error: " + err.Error())
}
case "ls":
+ // todo: allow sequence
folder := mbox.Default()
if len(os.Args) > 2 {
folder = os.Args[2]
@@ 135,14 136,13 @@ func main() {
// todo: save more than one part by using matchers
var files []string
files, err = mb.Save(msg, part)
+ // don't break on error, print what we got so far
for _, file := range files {
os.Stdout.WriteString(file + "\n")
}
- if err != nil {
- src.Close()
- break
+ if err1 := src.Close(); err != nil {
+ err = err1
}
- err = src.Close()
case "parts":
var src io.ReadCloser = os.Stdin
if len(os.Args) > 2 {
@@ 166,8 166,7 @@ func main() {
}
err = src.Close()
case "pick":
- // todo: use default folder here
- // syntax: pick folder regexp
+ // syntax: pick <folder> regexp
if len(os.Args) < 3 {
err = missingParams
break
@@ 201,13 200,13 @@ func main() {
break
}
var src io.ReadCloser = os.Stdin
- // if len(os.Args) > 2 {
- if src, err = openMsg(mbox, os.Args[2]); err != nil {
- break
+ if len(os.Args) > 2 {
+ if src, err = openMsg(mbox, os.Args[2]); err != nil {
+ break
+ }
}
- // }
err = mb.Attach(mbox, os.Stdout, src, os.Args[3])
- case "reply":
+ case "reply": // is a reply-all
var src io.ReadCloser = os.Stdin
if len(os.Args) > 2 {
if src, err = openMsg(mbox, os.Args[2]); err != nil {
@@ 228,9 227,6 @@ func main() {
break
}
err = src.Close()
- case "replyall":
- // todo: implement this
- err = errors.New(cmd + ": not implemented")
case "forward":
var src io.ReadCloser = os.Stdin
if len(os.Args) > 2 {
M list.go +1 -1
@@ 15,7 15,7 @@ var oneDayAhead = time.Now().Add(24 * ti
func List(mbox Mailbox, dst io.Writer, folder string, pick *Sequence) error {
msgs, err := mbox.ReadFolder(folder)
if err != nil && msgs == nil {
- // don't leave if we have msg, show as much as we can
+ // don't leave if we have msgs, show as much as we can
return err
}
out := bufio.NewWriter(dst)
M mh.go +1 -1
@@ 3,7 3,7 @@ package mailbox
import (
"net/mail"
- mh "bitbucket.org/telesto/mailbox/mh"
+ "bitbucket.org/telesto/mailbox/mh"
)
type mhMailbox struct {
M mh/mh.go +1 -1
@@ 1,4 1,4 @@
-package mailbox
+package mh
// todo: move this to a mh subpackage?
// todo: locking
M mh/setup_template.go +1 -1
@@ 1,4 1,4 @@
-package mailbox
+package mh
// These are instructions for setting up the MH account:
// - Copy this file to setup.go (in the same folder).