aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/aerc-search.1.scd12
-rw-r--r--worker/imap/search.go8
-rw-r--r--worker/maildir/search.go8
3 files changed, 22 insertions, 6 deletions
diff --git a/doc/aerc-search.1.scd b/doc/aerc-search.1.scd
index fae241a5..614a2bd1 100644
--- a/doc/aerc-search.1.scd
+++ b/doc/aerc-search.1.scd
@@ -12,10 +12,14 @@ aerc-search(1)
*-b*: Search in the body of the messages
- *-t*: Search in the entire text of the messages
+ *-a*: Search in the entire text of the messages
*-f <from>*: Search for messages from <from>
+ *-t <to>*: Search for messages to <to>
+
+ *-c <cc>*: Search for messages cc'ed to <cc>
+
# MAILDIR
*search* [-rubt] [-f <from>] <terms...>
@@ -28,10 +32,14 @@ aerc-search(1)
*-b*: Search in the body of the messages
- *-t*: Search in the entire text of the messages
+ *-a*: Search in the entire text of the messages
*-f <from>*: Search for messages from <from>
+ *-t <to>*: Search for messages to <to>
+
+ *-c <cc>*: Search for messages cc'ed to <cc>
+
# NOTMUCH
*search* <query...>
diff --git a/worker/imap/search.go b/worker/imap/search.go
index 939516dd..42e155b6 100644
--- a/worker/imap/search.go
+++ b/worker/imap/search.go
@@ -9,7 +9,7 @@ import (
func parseSearch(args []string) (*imap.SearchCriteria, error) {
criteria := imap.NewSearchCriteria()
- opts, optind, err := getopt.Getopts(args, "rubtH:f:")
+ opts, optind, err := getopt.Getopts(args, "rubat:H:f:c:")
if err != nil {
return nil, err
}
@@ -25,9 +25,13 @@ func parseSearch(args []string) (*imap.SearchCriteria, error) {
// TODO
case 'f':
criteria.Header.Add("From", opt.Value)
+ case 't':
+ criteria.Header.Add("To", opt.Value)
+ case 'c':
+ criteria.Header.Add("Cc", opt.Value)
case 'b':
body = true
- case 't':
+ case 'a':
text = true
}
}
diff --git a/worker/maildir/search.go b/worker/maildir/search.go
index f8130ac4..47eab6a1 100644
--- a/worker/maildir/search.go
+++ b/worker/maildir/search.go
@@ -29,7 +29,7 @@ func newSearchCriteria() *searchCriteria {
func parseSearch(args []string) (*searchCriteria, error) {
criteria := newSearchCriteria()
- opts, optind, err := getopt.Getopts(args, "rubtH:f:")
+ opts, optind, err := getopt.Getopts(args, "rubat:H:f:c:")
if err != nil {
return nil, err
}
@@ -45,9 +45,13 @@ func parseSearch(args []string) (*searchCriteria, error) {
// TODO
case 'f':
criteria.Header.Add("From", opt.Value)
+ case 't':
+ criteria.Header.Add("To", opt.Value)
+ case 'c':
+ criteria.Header.Add("Cc", opt.Value)
case 'b':
body = true
- case 't':
+ case 'a':
text = true
}
}