notmuch clon
Find a file
Carl Worth 3846c1d12c test: Disentangle execution of notmuch from the examination of the results.
The old execute_expecting function was doing far too much for its own
good.  One of the worst aspects of this was that it introduced
shell-quoting challengers where the caller could not easily control
the precise invocation of the command to be executed.

I personally couldn't find a way to test "notmuch search '*'" without
the shell expanding * against files in the current directory, or
having bogus quotation marks appearing in the search string,
(defeating the recognition of "*" as a special search term).

Hopefully this aspect of the test suite will be much easier to maintain now.
2010-04-15 14:13:12 -07:00
compat Add simplistic reimplementation of strcasestr to compat library 2010-04-14 11:34:12 -07:00
completion Makefile: Move the completion-specific commands to completion/Makefile.local 2010-04-06 14:36:31 -07:00
debian debian: Unbreak the build. 2010-04-07 16:00:20 -07:00
emacs Clean up code duplication in adding or removing tag by region. 2010-04-14 10:10:55 -07:00
lib Makefile: Add library version information on OS X. 2010-04-14 16:18:19 -07:00
packaging packaging: Add a pointer to where the debian packaging really is. 2010-04-06 14:42:09 -07:00
test test: Disentangle execution of notmuch from the examination of the results. 2010-04-15 14:13:12 -07:00
vim Install vim plugin with vim-addons 2010-01-21 14:58:19 +13:00
.gitignore .gitignore: Ignore the releases directory. 2010-04-06 14:36:31 -07:00
AUTHORS Drop date.c file, (use identical function from GMime instead). 2009-11-02 14:36:33 -08:00
configure Makefile: Fix final linking of notmuch binary for OS X. 2010-04-14 16:29:50 -07:00
COPYING Add copy of GNU General Public License (version 3). 2009-10-21 16:25:08 -07:00
COPYING-GPL-3 Add copy of GNU General Public License (version 3). 2009-10-21 16:25:08 -07:00
debugger.c notmuch-new: Only install SIGALRM if not running under gdb 2009-11-22 05:36:36 +01:00
gmime-filter-headers.c Decode headers in reply 2010-04-13 09:23:54 -07:00
gmime-filter-headers.h Decode headers in reply 2010-04-13 09:23:54 -07:00
gmime-filter-reply.c Filter out carriage-returns in show and reply output. 2009-11-18 23:34:43 +01:00
gmime-filter-reply.h Typsos 2009-11-18 03:21:36 -08:00
INSTALL INSTALL: Include Fedora command for installing dependencies of notmuch. 2010-03-09 12:13:32 -08:00
json.c Fix json_quote_str to handle non-ASCII characters 2010-04-13 08:30:40 -07:00
Makefile Makefile: Move include of Makefile.config up from Makefile.local 2010-04-14 11:34:12 -07:00
Makefile.local Makefile: Fix final linking of notmuch binary for OS X. 2010-04-14 16:29:50 -07:00
NEWS NEWS: Add some (brief) news items for the initial 0.1 release. 2010-04-05 15:29:54 -07:00
notmuch-client.h notmuch: Correctly terminate text/* parts in JSON output 2010-04-05 10:57:23 -07:00
notmuch-config.c * notmuch-config: fix small leak from 'g_key_file_to_data' 2009-12-04 11:16:26 -08:00
notmuch-count.c notmuch count: Remove special handling of "*". 2010-04-09 17:44:01 -07:00
notmuch-dump.c lib: Rename iterator functions to prepare for reverse iteration. 2010-03-09 09:22:29 -08:00
notmuch-new.c Prevent data loss caused by SIGINT during notmuch new 2010-04-13 08:44:34 -07:00
notmuch-reply.c Decode headers in reply 2010-04-13 09:23:54 -07:00
notmuch-restore.c lib: Rename iterator functions to prepare for reverse iteration. 2010-03-09 09:22:29 -08:00
notmuch-search-tags.c lib: Rename iterator functions to prepare for reverse iteration. 2010-03-09 09:22:29 -08:00
notmuch-search.c lib: Rename iterator functions to prepare for reverse iteration. 2010-03-09 09:22:29 -08:00
notmuch-setup.c notmuch setup: Exit if EOF is encountered at any prompt. 2009-12-01 08:06:09 -08:00
notmuch-show.c notmuch: Correctly terminate text/* parts in JSON output 2010-04-05 10:57:23 -07:00
notmuch-tag.c lib: Rename iterator functions to prepare for reverse iteration. 2010-03-09 09:22:29 -08:00
notmuch-time.c Add some const correctness to talloc 'ctx' parameter. 2009-11-17 19:10:37 -08:00
notmuch.1 nomtuch.1: Add documentation for "notmuch count" 2010-04-09 17:44:01 -07:00
notmuch.c notmuch count: Remove unneeded paragraph from documentation. 2010-04-09 17:44:01 -07:00
notmuch.desktop notmuch.desktop: Clarify that this is the emacs interface to notmuch. 2010-01-24 07:30:08 +13:00
query-string.c notmuch: Break notmuch.c up into several smaller files. 2009-11-10 12:03:05 -08:00
README README: Mention that notmuch only supports maildir or mh format. 2010-02-25 11:03:56 -08:00
RELEASING RELEASING: Update instructions for new version technique. 2010-04-09 19:12:36 -07:00
show-message.c notmuch: Add a 'part' subcommand 2010-04-02 09:43:03 +01:00
TODO TODO: Add some ideas for improving the emacs interface. 2010-04-15 14:13:11 -07:00

Notmuch - thread-based email index, search and tagging.

Notmuch is a system for indexing, searching, reading, and tagging
large collections of email messages in maildir or mh format. It uses
the Xapian library to provide fast, full-text search with a convenient
search syntax.

Notmuch is free software, released under the GNU General Public
License version 3 (or later).

Building notmuch
----------------
See the INSTALL file for notes on compiling and installing notmuch.

Contacting users and developers
-------------------------------
The website for Notmuch is:

	http://notmuchmail.org

The mailing list address for the notmuch community is:

	notmuch@notmuchmail.org

We welcome any sort of questions, comments, kudos, or code there.

Subscription is not required, (but if you do subscribe you'll avoid
any delay due to moderation). See the website for subscription
information.

There is also an IRC channel dedicated to talk about using and
developing notmuch:

	IRC server:	irc.freenode.net
	Channel:	#notmuch

Interface options
-----------------
Notmuch includes a "notmuch" command-line interface to the system.
This is not a very convenient interface and it is not expected that
users will find it satisfying. Instead, there are two option for
obtaining a more sophisticated interface:

     1. Build on top of the "notmuch" command-line interface.

	This might be a reasonable option for a very text-oriented
	client environment. For example, an emacs-based interface for
	notmuch is already under development and is available in the
	notmuch.el file in this distribution.

	If someone were to write a curses-based interface, or similar,
	it might also be reasonable to build on the "notmuch"
	command-line interface.

     2. Build on top of the notmuch library interface.

	This is a better choice for developing an interface that has
	full control of the presentation of email threads and
	messages. It is expected that anyone integrating Notmuch into
	an existing, graphical email program use the notmuch library
	interface.

	The public interface to the notmuch library is contained in
	the notmuch.h header file. The "notmuch" command-line program
	in notmuch.c can be used as good example code, since it is a
	simple program that is written on top of the library
	interface.

As can be seen, alternate interfaces to the Notmuch mail system are
still in development. We would appreciate any contributions to these
efforts.