--- /dev/null
+#!/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 <command> [args...]
+
+Where <command> 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-terms> [...]
+
+ Search for messages matching the given search terms.
+
+ show <search-terms> [...]
+
+ Show all messages matching the search terms.
+
+ count <search-terms> [...]
+
+ Count messages matching the search terms.
+
+ reply [options...] <search-terms> [...]
+
+ Construct a reply template for a set of messages.
+
+ tag +<tag>|-<tag> [...] [--] <search-terms> [...]
+
+ Add/remove tags for all messages matching the search terms.
+
+ dump [<filename>]
+
+ Create a plain-text dump of the tags for each message.
+
+ restore <filename>
+
+ Restore the tags from the given dump file (see 'dump').
+
+ search-tags [<search-terms> [...] ]
+
+ List all tags found in the database or matching messages.
+
+ help [<command>]
+
+ This message, or more detailed help for the named command.
+
+Use "notmuch help <command>" 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-terms> [...]
+
+ Search for messages matching the given search terms.
+
+show <search-terms> [...]
+
+ Show all messages matching the search terms.
+
+count <search-terms> [...]
+
+ Count messages matching the search terms.
+
+reply [options...] <search-terms> [...]
+
+ Construct a reply template for a set of messages.
+
+tag +<tag>|-<tag> [...] [--] <search-terms> [...]
+
+ Add/remove tags for all messages matching the search terms.
+
+dump [<filename>]
+
+ Create a plain-text dump of the tags for each message.
+
+restore <filename>
+ search-tags [<search-terms> [...] ]
+
+ List all tags found in the database or matching messages.
+ """