You need to run the tag-pattern command. The default for that is T (Shift+t). You can then give it a regular expression. By default this will match message subjects.
If you need to select a range of messages by number, you can provide the ~m [MIN]-[MAX] pattern to tag-pattern. There are many other options I've found useful over the years, and you can ...
I finally got it to work by enabling Google 2-step verification and using an app-specific password for mutt.
I enabled 2-step verification on my Google account, which means that when I log in to Google, I have to enter a pin number from either a text or from the Google Authenticator app.
Then I had to get an app-specific password for mutt. ...
Create a passwords file: ~/.mutt/passwords:
This file can be encrypted using GPG. First, create a public/private key pair:
$ gpg --gen-key
Encrypt the passwords file:
$ gpg -r email@example.com -e ~/.mutt/passwords
$ ls ~/.mutt/passwords*
search and limit can also actually search inside messages, depending on the search patterns you give. From the Patterns subsection of the Mutt reference:
~b EXPR messages which contain EXPR in the message body
=b STRING If IMAP is enabled, like ~b but searches for STRING on the server, rather than downloading each message and searching it ...
After you compose a message, but before sending you have lots of options available to you. Press ? to view them.
Some that may help here:
F to filter the attachment through an external processor
Use pandoc -s -f markdown -t html to convert to HTML
^T to edit the attachment MIME type
Change from text/plain to text/html.
Now a macro that will do ...
The obvious answer is Alpine, which used to be Pine, but was freed by the University of Washington. Pine is non-free software, Alpine is free software. Alpine is quite similar to Mutt, but Mutt is generally considered to be more powerful and flexible. The current active branch of Alpine is a fork called Re-Alpine, since the University of Washington has ...
The s command saves to a mailbox, which for you is in maildir format. Unfortunately, there is no save-to-file command, perhaps because in the historical mbox format, a mailbox that contains a single mail is just a file containing that mail.
The mutt command pipe-message (default shortcut |) can be used for this. It opens a command line and you write cat >...
As one of the comments says it looks like Google have moved to blocking apps that are using IMAP/SMTP PLAIN authentication by default and you can read official blogs stating that Google strongly recommends IMAP/SMTP protocol users switch to OAuth 2.0 (as XMPP is also listed I wonder if (older?) OSX iChat will stop working with GTalk at some point). Elsewhere,...
For authentication, you'll have to do either of two things:
Generate an application-specific password for your Google Account (your only option if you're using 2FA),
Turn on less-secure app access (not an option with 2FA)
In gmail, go click the gear icon, go to Settings, go to the tab Forwarding POP/IMAP, and click the Configuration ...
When using smtp submission on port 587, the value for smtp_url should start with "smtp://", i.e. not with "smtps://". It is also important to make sure ssl_starttls is set to "yes", as correctly done in the config above.
While setting up my own server I got the exact same problem. Having access to logs on both the client & the server side, made it ...
macro index S ":set confirmappend=no delete=yes\n<tag-prefix-cond><save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"
macro index A ":set confirmappend=no delete=yes\n<save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"
macro index S ":set ...
Run enter-command (by default it is bound to : in the index view) and then run set ?option, where option is the desired option; mutt will then display what is the current value for the option.
Source: mutt manual.
I found the correct answer here: Bind ctrl+up in muttrc | mail-archive.com.
Inside mutt, use the command
Then pressing the desired key (like Ctrl+arrow) you can learn how to reference any key. In my case I get <C-Up> for Ctrl+Up.
Hit Ctrl-g to exit what-key.
I believe I found a solution to this on the Mutt wiki.
How to make mutt check for new mail more often? What's the difference between $timeout
After every keyboard input mutt updates the status of all folders. To receive "New mail
in ..." notifications even without needing to press a key, set $timeout == time to wait
This was very helpful, but still wasn't quite obvious to a complete newbie like me. In gory detail...
mutt responds with "Delete messages matching:"
Type a response following the pattern: "~m 1234-2345" (no quotes)
You can set the timeout variable to something like:
This will poll the current mailbox every 10 seconds at most when mutt is idle waiting for user input, more often than the default 600 seconds.
This is not needed in post v1.5.11 when IDLE is enabled.
If you touch a file and then try to save or copy a message to it mutt will use it as a mbox.
Also you might want to use copy instead of save. Mutt assumes that a mail should only exist in one copy and saving a message to another mailbox will delete it from the first one, while copying will do a proper copy.
Create a file with the following content:
alias my_alias1 recipient1@email, recipient1@email
alias my_alias2 recipient3@email, recipient4@email
Source it from your mutt config with source path/to/alias_file.
Aliases - Mutt Project Wiki
OfflineIMAP and isync are both programs that integrate well with mutt and will satisfy your other criteria.
OfflineIMAP is written in Python and isync in C; both are very quick.
Both programs are well documented and straightforward to set up; isync perhaps slightly easier.
There is one significant difference between the functionality of each that is worth ...
Extending @Scott McClung's correct answer:
If you want to apply mutt commands by default to all selected (tagged) messages without using tag-prefix (bound to ; by default), you can set the auto_tag variable by adding this line to your .muttrc:
set auto_tag = yes
The formail tool from procmail (available in any distribution, it's a classic) is designed precisely for this purpose.
formail -s myprogram --option
runs myprogram --option on each mail in turn. The program receives each mail on its standard input.
This suggests using the 'pager_format', to make it show the letter date in the local timezone:
set pager_format="%4C %Z %[!%b %e at %I:%M %p] %.20n %s%* -- (%P)"