> __A note on message ids__: Confused by those message ids? Get used to them, because they are an importance part of the notmuch workflow. Every send message has a unique message id, just like a website has a unique url. On the notmuch mailing list people will throw around message ids and expect people to just find the right mails, as this is what notmuch makes easy. In order to find a specific message, hit 's' for search and type: "id:messageidhere". If you incorporated the notmuch mail archive, you can e.g. try to find id:87r5o8stbj.fsf@yoom.home.cworth.org. Don't have the notmuch archive back to Feb 25, 2010? Fortunately gmane (and probably others allow to search for message id in their archives as well. You'll find this message under [http://mid.gmane.org/87r5o8stbj.fsf@yoom.home.cworth.org](http://mid.gmane.org/87r5o8stbj.fsf@yoom.home.cworth.org) (incidentally, this server seems to be down right now).
-### Synchronizing notmuch tags with maildir flags
-IMAP users rely on maildir flags that convey the status "seen", "replied", "trashed", in order to synchronize the status of their mail across mail clients (a [maildir flag](http://cr.yp.to/proto/maildir.html) is simply a defined part of their filename). notmuch will by default happily ignore those flags and will never modify them either. If you want to use your mail with non-notmuch clients too, please check out the entry on "[how to sync notmuch tags and maildir flags](#sync_maildir_flags)".
-
### Navigating & reading mails
OK, messages are now in your maildir and they have the tags you want them to have (of course you will be assigning more tags manually as you parse through your mail.). Now, on to actually using notmuch in emacs. If you added the correct bits to your .emacs file you will be able to start notmuch by typing "M-x notmuch" (or M-x notmuch-folder). If you want to start notmuch immediately when starting emacs you can also call emacs as "emacs -f notmuch" (and create a handy shortcut on your desktop for that).
Here's an example of how to add a key binding to notmuch-show-mode
to toggle a "deleted" tag:
- (define-key notmuch-show-mode-map "d"
- (lambda ()
- "toggle deleted tag for message"
- (interactive)
- (if (member "deleted" (notmuch-show-get-tags))
- (notmuch-show-remove-tag "deleted")
- (notmuch-show-add-tag "deleted"))))
+ (define-key notmuch-show-mode-map "d"
+ (lambda ()
+ "toggle deleted tag for message"
+ (interactive)
+ (if (member "deleted" (notmuch-show-get-tags))
+ (notmuch-show-remove-tag "deleted")
+ (notmuch-show-add-tag "deleted"))))
You can do the same for threads in notmuch-search-mode by just
replacing "show" with "search" in the called functions. This
definition makes use of a lambda function, but you could just as
easily defined a separate function first:
- (defun notmuch-show-toggle-deleted-tag()
- "toggle deleted tag for message"
- (interactive)
- (if (member "deleted" (notmuch-show-get-tags))
- (notmuch-show-remove-tag "deleted")
- (notmuch-show-add-tag "deleted")))
- (define-key notmuch-show-mode-map "d" 'notmuch-show-toggle-deleted-tag)
+ (defun notmuch-show-toggle-deleted-tag()
+ "toggle deleted tag for message"
+ (interactive)
+ (if (member "deleted" (notmuch-show-get-tags))
+ (notmuch-show-remove-tag "deleted")
+ (notmuch-show-add-tag "deleted")))
+ (define-key notmuch-show-mode-map "d" 'notmuch-show-toggle-deleted-tag)
* <span id="fcc">**How to do FCC/BCC...**</span>
automatically). To customize both variables at the same time, use
the fancy command:
- M-x customize-apropos<RET>\(notmuch-fcc-dirs\)\|\(message-directory\)
+ M-x customize-apropos<RET>\(notmuch-fcc-dirs\)\|\(message-directory\)
This method will even allow you to select different outboxes
depending on your selected from address, if you need that
configure this mode, edit your ${HOME}/.emacs file and include text
something like the following:
- (setq notmuch-folders '(("inbox" . "tag:inbox")
- ("unread" . "tag:inbox AND tag:unread")
- ("notmuch" . "tag:inbox AND to:notmuchmail.org")))
+ (setq notmuch-folders '(("inbox" . "tag:inbox")
+ ("unread" . "tag:inbox AND tag:unread")
+ ("notmuch" . "tag:inbox AND to:notmuchmail.org")))
Of course, you can have any number of folders, each configured
with any supported search terms (see "notmuch help search-terms").
for the domains you want to send out using specific SMTP servers and
the rest will go to the default account.
-* <span id="sync_maildir_flags">**how to sync notmuch tags and maildir
- flags**</span>
-
- There is no built-in support for sunchronizing your notmuch tags
- with your imap maildir flags (seen, replied, trashed, etc). However
- there are currently 2 ways in which you can achieve
- synchronization. In order to sync new notmuch tags to maildir flags,
- there is a python tool called
- [notmuchsync](http://spaetz.github.com/notmuchsync/) that allows
- synchronization in either direction or pruning of deleted files.
-
- The second solution allows for fast maildir flag to notmuch tag
- synchronization (and only in that direction) requires patching the
- notmuch source code. The patch has been posted in this mail
- *id:1267450136-31749-1-git-send-email-Sebastian@SSpaeth.de* and can
- be viewed as a [source diff in this git
- repository](http://github.com/spaetz/notmuch-all-feature/commit/df3b087cefb85e9d16fd17540e348bcb854dd7ee).
-
* <span id="address_completion">**how to get email address completion**</span>
There are 2 solutions. Use "bbdb" which allows you to maintain a mail database and gives you mail address completion with the tab key.