X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=howto.mdwn;h=77ce9b6febf0384cb2a2ed189096296ecbbbf340;hb=49256ba2b52af852eec496a7d7b1fac1f76650ac;hp=6a7d45a32b6456ec8cb64681c28a9589c5198ae1;hpb=6bf178eeb7c467d2a6a7e3f1b2f19c7e170b31b5;p=notmuch-wiki diff --git a/howto.mdwn b/howto.mdwn index 6a7d45a..77ce9b6 100644 --- a/howto.mdwn +++ b/howto.mdwn @@ -26,18 +26,19 @@ various "third party" notmuch utilities. * [fetchmail](http://fetchmail.berlios.de/) - See the [[initial_tagging]] page for more info on intial tagging of messages. + See the [[initial_tagging]] page for more info on initial tagging of messages. -* **Print only filenames of a search (python bindings)** +* **Use notmuch from python** Notmuch includes python bindings to the notmuch shared library. Extensive API documentation [is - available](http://notmuchmail.readthedocs.org/). + available](http://notmuch.readthedocs.org/). The bindings are very simple to use. As an example, given you have the python bindings installed (or simply set your PYTHONPATH environment variable to point to the .../bindings/python directory), - this script will print the filenames of a matching search: + this snippet will produce a list of mails matching the given + expression: >>> import notmuch >>> db = notmuch.Database() @@ -49,7 +50,9 @@ various "third party" notmuch utilities. notmuch **since version 0.5** syncs maildir flags and respective tags in both directions. This part applies only to notmuch prior to - version 0.5: + version 0.5 (but please consider updating to a more recent version + of notmuch; in addition to maildir tag syncing, it contains many + useful new features, and several important bug fixes): Some IMAP users rely on maildir flags that convey the status "seen", "replied", "trashed", in order to synchronize the status of their @@ -81,19 +84,46 @@ various "third party" notmuch utilities. MUA. A popular geek MUA is [the Mutt e-mail client](http://www.mutt.org); - integrating notmuch with Mutt is fairly straightforward. An - [**how to use Notmuch with Mutt**](http://upsilon.cc/~zack/blog/posts/2011/01/how_to_use_Notmuch_with_Mutt/) - has been written by Stefano Zacchiroli, together with some glue code. Check - out the - [howto](http://upsilon.cc/~zack/blog/posts/2011/01/how_to_use_Notmuch_with_Mutt/) - for more information. - - (Note by the howto author: I've linked the howto from this wiki rather - than splicing it in, in order to avoid duplication of information. If you - think it would be better to have it here, feel free to copy the text - here. The howto is - [available](http://git.upsilon.cc/cgi-bin/gitweb.cgi?p=zack-homepage.git;a=history;f=blog/posts/2011/01/how_to_use_Notmuch_with_Mutt.mdwn) - in markdown syntax from the Git repository of my homepage.) + integrating notmuch with Mutt is not seamless, but fairly straightforward. + There are two principal possibilities, each with its own ups and downs: + + * Using mutt-notmuch, which will create a "virtual" maildir folder with + search results whenever a search is made. The upside is that you can + search all your folders simultanously; the downside is that your + modifications in the results listing do not carry over, also having + to switch folders comes with some more annoyances. + + An + [**how to use Notmuch with Mutt**](http://upsilon.cc/~zack/blog/posts/2011/01/how_to_use_Notmuch_with_Mutt/) + has been written by Stefano Zacchiroli. Check out the + [howto](http://upsilon.cc/~zack/blog/posts/2011/01/how_to_use_Notmuch_with_Mutt/) + for more information. + + (Note by the howto author: I've linked the howto from this wiki rather + than splicing it in, in order to avoid duplication of information. If you + think it would be better to have it here, feel free to copy the text + here. The howto is + [available](http://git.upsilon.cc/cgi-bin/gitweb.cgi?p=zack-homepage.git;a=history;f=blog/posts/2011/01/how_to_use_Notmuch_with_Mutt.mdwn) + in markdown syntax from the Git repository of my homepage.) + + * Using a simple macro that will emulate the "limit" mutt functionality + using notmuch. + + See the [**alternative notmuch integration**](http://log.or.cz/?p=228) + blog post for instructions and details, + or simply put these two macros to your muttrc: + + # 'L' performs a notmuch query, showing only the results + macro index L "unset wait_keyread -p 'notmuch query: ' x; echo \$x >~/.cache/mutt_terms~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;chomp@a;s/\^id:// for@a;$,=\"|\";print@a'\`\"" "show only messages matching a notmuch pattern" + # 'a' shows all messages again (supersedes default binding) + macro index a "all\n" "show all messages (undo limit)" + + The upside (if you are used to working in the context of a single folder) + is that this really does use the limit functionality of mutt + and you are still in your original folder. + The downside is that this approach has scaling problems + and works well only for reasonably specific queries. + * **Automatically retagging the database (e.g., when upgrading versions)** @@ -137,3 +167,7 @@ various "third party" notmuch utilities. output. Using the instructions from [Gmane's site](http://gmane.org/export.php), we can download an mbox file, which we can then convert to maildir using mb2md or other utility. + +* **Take advantage of tags that are special to notmuch** + + See [[tags special to notmuch|special-tags]].