about summary refs log tree commit diff stats
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 fae241a..614a2bd 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 939516d..42e155b 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 f8130ac..47eab6a 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
 		}
 	}