On Sat, 20 Mar 2021, at 10:42, Julius Hamilton wrote: > Hello Mutt users, > > I would like to know if there is a way to retrieve a list of emails from > a particular user at stdout in bash, rather than launching the mutt > application. Or, if one can launch mutt with the search already > executed. I currently know how to launch mutt, and then search for a > particular sender. > > Or, if someone knows commands from a similar tool to achieve this.
Use notmuch. $ notmuch search 'from:Julius Hamilton' thread:0000000000015cd4 25 mins. ago [1/1] Julius Hamilton; Search and limit from command line (inbox unread) $ notmuch search --format=json 'from:Julius Hamilton' [{"thread": "0000000000015cd4", "timestamp": 1616233332, "date_relative": "26 mins. ago", "matched": 1, "total": 1, "authors": "Julius Hamilton", "subject": "Search and limit from command line", "query": ["id:YFXDdAEhEL3NU0sj@localhost", null], "tags": ["inbox", "unread"]}] I have integrated it with my mutt like so (I fetch email using isync/mbsync instead of using mutt's IMAP support): macro generic,index,pager <F2> "<shell-escape>mbsync -a<enter><shell-escape>notmuch new<enter>" "fetch mail" macro index <F7> \ "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\ <shell-escape>notmuch-mutt -r --prompt search<enter>\ <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\ <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \ "notmuch: search mail" macro index <F8> \ "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\ <pipe-message>notmuch-mutt -r thread<enter>\ <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\ <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \ "notmuch: reconstruct thread" Macros given as a reference, not as an example of especially good scripting. I haven't touched or improved these definitions in years.