summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
95f2594)
--HG--
extra : transplant_source : 2%0B%97h%40Af%07%DD%F2%5ESX%20%05%3D%C0%C5v%F8
_get = nmlib.notmuch_tags_get
_get.restype = c_char_p
_get = nmlib.notmuch_tags_get
_get.restype = c_char_p
- def __init__(self, tags_p, db=None):
+ def __init__(self, tags_p, parent=None):
"""
msg_p is a pointer to an notmuch_message_t Structure. If it is None,
we will raise an NotmuchError(STATUS.NULL_POINTER).
"""
msg_p is a pointer to an notmuch_message_t Structure. If it is None,
we will raise an NotmuchError(STATUS.NULL_POINTER).
- Is passed the db these tags are derived from, and saves a
+ Is passed the parent these tags are derived from, and saves a
reference to it, so we can automatically delete the db object
once all derived objects are dead.
reference to it, so we can automatically delete the db object
once all derived objects are dead.
NotmuchError(STATUS.NULL_POINTER)
self._tags = tags_p
NotmuchError(STATUS.NULL_POINTER)
self._tags = tags_p
- self._db = db
- logging.debug("Inited Tags derived from %s" %(str(db)))
+ #save reference to parent object so we keep it alive
+ self._parent = parent
+ logging.debug("Inited Tags derived from %s" %(repr(parent)))
def __iter__(self):
""" Make Tags an iterator """
def __iter__(self):
""" Make Tags an iterator """
raise NotmuchError(STATUS.NULL_POINTER)
return Tags(tags_p, self)
raise NotmuchError(STATUS.NULL_POINTER)
return Tags(tags_p, self)
+ def __str__(self):
+ """A message() is represented by a 1-line summary"""
+ tags = str(self.get_tags())
+ return "TODO: FIXME Sebastian Krzyszkowiak <seba.dos1@gmail.com> (2009-08-27) (%s)" % (tags)
+
def __del__(self):
"""Close and free the notmuch Message"""
if self._msg is not None:
def __del__(self):
"""Close and free the notmuch Message"""
if self._msg is not None:
if len(sys.argv) == 2: print HELPTEXT
else: print "Not implemented"
if len(sys.argv) == 2: print HELPTEXT
else: print "Not implemented"
+ elif sys.argv[1] == 'show':
+ db = Database()
+ if len(sys.argv) == 2:
+ #no further search term
+ querystr=''
+ else:
+ #mangle arguments wrapping terms with spaces in quotes
+ querystr = quote_query_line(sys.argv[2:])
+ logging.debug("show "+querystr)
+ m = Query(db,querystr).search_messages()
+ for msg in m:
+ print("%s" % (msg))
+
elif sys.argv[1] == 'new':
#TODO: handle --verbose
print "Not implemented."
elif sys.argv[1] == 'new':
#TODO: handle --verbose
print "Not implemented."
#TODO: implement
"""
search [options...] <search-terms> [...]
#TODO: implement
"""
search [options...] <search-terms> [...]
-
- Search for messages matching the given search terms.
-
show <search-terms> [...]
show <search-terms> [...]
-
- Show all messages matching the search terms.
-
reply [options...] <search-terms> [...]
reply [options...] <search-terms> [...]
-
- Construct a reply template for a set of messages.
-
tag +<tag>|-<tag> [...] [--] <search-terms> [...]
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.
-
- search-tags [<search-terms> [...] ]
-
- List all tags found in the database or matching messages.