From ce50b33cf0150a69a3a7499937eaba9447cc75a6 Mon Sep 17 00:00:00 2001 From: Sebastian Spaeth Date: Tue, 16 Mar 2010 12:21:18 +0100 Subject: [PATCH] add notmuch stub that will allow me to run the notmuch testsuite over the python bindings. --HG-- extra : transplant_source : %E4%EF%29%A3%9BA%C57%7C%EC%B0%7BF%FB%00%F0%EB%97%92%E3 --- notmuch | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100755 notmuch diff --git a/notmuch b/notmuch new file mode 100755 index 00000000..2f65ae49 --- /dev/null +++ b/notmuch @@ -0,0 +1,137 @@ +#!/usr/bin/env python +"""This is a notmuch implementation in python. It's goal is to allow running the test suite on the cnotmuch python bindings.""" +import sys +#------------------------------------------------------------------------- +HELPTEXT="""The notmuch mail system. + +Usage: notmuch [args...] + +Where and [args...] are as follows: + + setup Interactively setup notmuch for first use. + + new [--verbose] + + Find and import new messages to the notmuch database. + + search [options...] [...] + + Search for messages matching the given search terms. + + show [...] + + Show all messages matching the search terms. + + count [...] + + Count messages matching the search terms. + + reply [options...] [...] + + Construct a reply template for a set of messages. + + tag +|- [...] [--] [...] + + Add/remove tags for all messages matching the search terms. + + dump [] + + Create a plain-text dump of the tags for each message. + + restore + + Restore the tags from the given dump file (see 'dump'). + + search-tags [ [...] ] + + List all tags found in the database or matching messages. + + help [] + + This message, or more detailed help for the named command. + +Use "notmuch help " for more details on each command. +And "notmuch help search-terms" for the common search-terms syntax. +""" + +#TODO: replace the dynamic pieces +USAGE="""Notmuch is configured and appears to have a database. Excellent! + +At this point you can start exploring the functionality of notmuch by +using commands such as: + + notmuch search tag:inbox + + notmuch search to:"Sebastian Spaeth" + + notmuch search from:"Sebastian@SSpaeth.de" + + notmuch search subject:"my favorite things" + +See "notmuch help search" for more details. + +You can also use "notmuch show" with any of the thread IDs resulting +from a search. Finally, you may want to explore using a more sophisticated +interface to notmuch such as the emacs interface implemented in notmuch.el +or any other interface described at http://notmuchmail.org + +And don't forget to run "notmuch new" whenever new mail arrives. + +Have fun, and may your inbox never have much mail. +""" +#------------------------------------------------------------------------- +if __name__ == '__main__': + + # Handle command line options + # No option + if len(sys.argv) == 1: + print USAGE + + elif sys.argv[1] == 'setup': + """ Interactively setup notmuch for first use. """ + print "Not implemented." + + elif sys.argv[1] == 'help': + if len(sys.argv) == 2: print HELPTEXT + else: print "Not implemented" + + else: + # unknown command + print "Error: Unknown command '%s' (see \"notmuch help\")" % sys.argv[1] + + + #TODO: implement + """ +new [--verbose] + + Find and import new messages to the notmuch database. + +search [options...] [...] + + Search for messages matching the given search terms. + +show [...] + + Show all messages matching the search terms. + +count [...] + + Count messages matching the search terms. + +reply [options...] [...] + + Construct a reply template for a set of messages. + +tag +|- [...] [--] [...] + + Add/remove tags for all messages matching the search terms. + +dump [] + + Create a plain-text dump of the tags for each message. + +restore + search-tags [ [...] ] + + List all tags found in the database or matching messages. + """