2010-03-16 20:54:43 +01:00
.. cnotmuch documentation master file, created by
2010-03-16 20:36:04 +01:00
sphinx-quickstart on Tue Feb 2 10:00:47 2010.
2010-03-17 12:32:22 +01:00
.. currentmodule :: cnotmuch
2010-03-16 20:36:04 +01:00
2010-03-17 12:32:22 +01:00
Welcome to :mod: `cnotmuch` 's documentation
===========================================
2010-03-16 20:36:04 +01:00
2010-03-16 20:54:43 +01:00
The :mod: `cnotmuch` module provides an interface to the `notmuch <http://notmuchmail.org> `_ functionality, directly interfacing to a shared notmuch library.
2010-03-24 17:18:33 +01:00
The classes :class: `notmuch.Database` , :class: `notmuch.Query` provide most of the core functionality, returning :class: `notmuch.Threads` , :class: `notmuch.Messages` and :class: `notmuch.Tags` .
2010-03-16 20:36:04 +01:00
.. moduleauthor :: Sebastian Spaeth <Sebastian@SSpaeth.de>
2010-03-16 20:54:43 +01:00
:License: This module is covered under the GNU GPL v3 (or later).
2010-03-16 20:36:04 +01:00
2010-03-24 11:05:54 +01:00
This page contains the main API overview of cnotmuch |release|.
2010-03-16 20:54:43 +01:00
2010-03-17 12:32:22 +01:00
Notmuch can be imported as::
2010-03-16 20:54:43 +01:00
from cnotmuch import notmuch
2010-03-17 12:32:22 +01:00
or::
2010-03-16 20:54:43 +01:00
from cnotmuch.notmuch import Query,Database
2010-03-16 20:36:04 +01:00
2010-03-24 11:05:54 +01:00
More information on specific topics can be found on the following pages:
2010-03-16 20:36:04 +01:00
.. toctree ::
:maxdepth: 1
2010-03-24 11:05:54 +01:00
notmuch
2010-03-16 20:36:04 +01:00
:mod: `notmuch` -- The Notmuch interface
=============================================
2010-03-17 12:32:22 +01:00
.. automodule :: cnotmuch.notmuch
:todo: Document nmlib,STATUS
2010-03-16 20:36:04 +01:00
2010-03-16 20:54:43 +01:00
:class: `Database` -- The underlying notmuch database
-----------------------------------------------------
2010-03-17 11:45:13 +01:00
.. autoclass :: Database([path=None[, create=False[, mode=MODE.READ_ONLY]]])
.. automethod :: create
.. automethod :: open(path, status=MODE.READ_ONLY)
.. automethod :: get_path
2010-03-18 08:50:48 +01:00
.. automethod :: get_version
.. automethod :: needs_upgrade
.. automethod :: upgrade
.. automethod :: get_directory
.. automethod :: add_message
.. automethod :: remove_message
2010-03-17 11:45:13 +01:00
.. automethod :: find_message
.. automethod :: get_all_tags
2010-03-19 10:55:06 +01:00
.. automethod :: create_query
2010-03-17 11:45:13 +01:00
2010-03-24 11:05:54 +01:00
.. note :: :meth: `create_query` was broken in release
0.1 and is fixed since 0.1.1.
2010-03-17 11:45:13 +01:00
.. attribute :: Database.MODE
Defines constants that are used as the mode in which to open a database.
2010-03-17 12:32:22 +01:00
MODE.READ_ONLY
2010-03-17 11:45:13 +01:00
Open the database in read-only mode
2010-03-17 12:32:22 +01:00
MODE.READ_WRITE
2010-03-17 11:45:13 +01:00
Open the database in read-write mode
.. autoattribute :: db_p
2010-03-16 20:36:04 +01:00
2010-03-17 15:14:44 +01:00
:class: `Query` -- A search query
2010-03-16 20:36:04 +01:00
-----------------------------------------------
2010-03-16 20:54:43 +01:00
.. autoclass :: Query
2010-03-17 15:14:44 +01:00
.. automethod :: create
.. attribute :: Query.SORT
Defines constants that are used as the mode in which to open a database.
SORT.OLDEST_FIRST
Sort by message date, oldest first.
SORT.NEWEST_FIRST
Sort by message date, newest first.
SORT.MESSAGE_ID
Sort by email message ID
.. automethod :: set_sort
2010-03-24 11:05:54 +01:00
.. attribute :: sort
Instance attribute :attr: `sort` contains the sort order (see
:attr: `Query.SORT` ) if explicitely specified via
:meth: `set_sort` . By default it is set to `None` .
2010-03-18 09:02:59 +01:00
.. automethod :: search_threads
2010-03-17 15:14:44 +01:00
.. automethod :: search_messages
2010-03-16 20:36:04 +01:00
2010-03-18 09:02:59 +01:00
.. automethod :: count_messages
2010-03-24 17:18:33 +01:00
.. #############################################
.. currentmodule :: cnotmuch.message
2010-03-16 20:54:43 +01:00
:class: `Messages` -- A bunch of messages
----------------------------------------
.. autoclass :: Messages
2010-03-17 15:14:44 +01:00
.. automethod :: collect_tags
.. automethod :: __len__
2010-03-16 20:54:43 +01:00
:class: `Message` -- A single message
----------------------------------------
.. autoclass :: Message
2010-03-17 17:09:58 +01:00
.. automethod :: get_message_id
2010-03-18 09:02:59 +01:00
.. automethod :: get_thread_id
2010-03-17 17:09:58 +01:00
2010-03-18 09:02:59 +01:00
.. automethod :: get_replies
2010-03-17 17:09:58 +01:00
.. automethod :: get_filename
2010-03-25 08:39:21 +01:00
.. attribute :: FLAG
FLAG.MATCH
This flag is automatically set by a
Query.search_threads on those messages that match the
query. This allows us to distinguish matches from the rest
of the messages in that thread.
.. automethod :: get_flag
2010-03-18 09:02:59 +01:00
.. automethod :: set_flag
.. automethod :: get_date
.. automethod :: get_header
2010-03-17 17:09:58 +01:00
.. automethod :: get_tags
.. automethod :: remove_tag
.. automethod :: add_tag
2010-03-18 09:02:59 +01:00
.. automethod :: remove_all_tags
.. automethod :: freeze
.. automethod :: thaw
2010-03-17 17:09:58 +01:00
.. automethod :: format_as_text
.. automethod :: __str__
2010-03-16 20:54:43 +01:00
2010-03-24 17:18:33 +01:00
.. #############################################
.. currentmodule :: cnotmuch.tag
2010-03-17 15:14:44 +01:00
:class: `Tags` -- Notmuch tags
-----------------------------
2010-03-16 20:36:04 +01:00
2010-03-16 20:54:43 +01:00
.. autoclass :: Tags
2010-03-16 20:36:04 +01:00
:members:
2010-03-17 15:14:44 +01:00
.. automethod :: __len__
2010-03-16 20:36:04 +01:00
2010-03-17 15:14:44 +01:00
.. automethod :: __str__
2010-03-16 20:36:04 +01:00
2010-03-24 11:05:54 +01:00
2010-03-24 17:18:33 +01:00
.. #############################################
2010-03-24 11:05:54 +01:00
.. currentmodule :: cnotmuch.thread
2010-03-18 09:02:59 +01:00
:class: `Threads` -- Threads iterator
------------------------------------
2010-03-24 11:05:54 +01:00
.. autoclass :: Threads
.. automethod :: __len__
.. automethod :: __str__
2010-03-18 09:02:59 +01:00
:class: `Thread` -- A single thread
------------------------------------
2010-03-24 11:05:54 +01:00
.. autoclass :: Thread
.. automethod :: get_thread_id
.. automethod :: get_total_messages
.. automethod :: get_toplevel_messages
.. automethod :: get_matched_messages
.. automethod :: get_authors
.. automethod :: get_subject
.. automethod :: get_oldest_date
.. automethod :: get_newest_date
.. automethod :: get_tags
.. automethod :: __str__
2010-03-18 09:02:59 +01:00
2010-03-24 17:18:33 +01:00
.. #############################################
.. currentmodule :: cnotmuch.notmuch
2010-03-18 09:02:59 +01:00
:class: `Filenames` -- An iterator over filenames
------------------------------------------------
To be implemented
:class: `Directoy` -- A directory entry in the database
------------------------------------------------------
To be implemented
2010-03-16 20:36:04 +01:00
:exc: `NotmuchError` -- A Notmuch execution error
------------------------------------------------
.. autoexception :: NotmuchError
:members:
This execption inherits directly from :exc: `Exception` and is raised on errors during the notmuch execution.
2010-03-17 11:45:13 +01:00
:class: `STATUS` -- Notmuch operation return status
--------------------------------------------------
.. autoclass :: STATUS
2010-03-18 09:02:59 +01:00
To be documented
2010-03-17 11:45:13 +01:00
2010-03-16 20:36:04 +01:00
Indices and tables
==================
* :ref: `genindex`
* :ref: `search`