notmuch clon
Find a file
Carl Worth 49f09958df notmuch new: Fix regression preventing recursion through symlinks.
In commit 3df737bc4addfce71c647792ee668725e5221a98 we switched from
using stat() to using the d_type field in the result of scandir() to
determine whether a filename is a regular file or a directory. This
change introduced a regression in that the recursion would no longer
traverse through a symlink to a directory. (Since stat() would resolve
the symlink but with scandir() we see a distinct DT_LNK value in
d_type).

We fix this for directories by allowing both DT_DIR and DT_LNK values
to recurse, and then downgrading the existing not-a-directory check
within the recursion to not be an error. We also add a new
not-a-directory check outside the recursion that is an error.
2010-01-06 10:32:06 -08:00
compat Makefiles: Use .DEFAULT to support arbitrary targets from sub directories. 2010-01-06 10:32:06 -08:00
config configure: Move getlinetest.c down into config/have_getline.c. 2009-12-01 16:56:39 -08:00
contrib Checkin some command-only tcsh completions 2009-11-20 18:15:19 +01:00
lib lib: Indicate whether notmuch_database_remove_message removed anything. 2010-01-06 10:32:06 -08:00
packaging/fedora notmuch build: add a RPM spec file 2009-11-20 10:37:38 +01:00
vim vim: preserve the 'show everything' flag when finding next/prev buffer 2009-12-03 13:30:21 -08:00
.gitignore Remove Makefile.config from the repository. 2009-12-01 08:34:09 -08:00
AUTHORS Drop date.c file, (use identical function from GMime instead). 2009-11-02 14:36:33 -08:00
configure configure: Look for both Xapian 1.1 and 1.0 and allow user override. 2010-01-06 10:31:09 -08: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-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/notmuch.el: More details on how to install/run notmuch.el 2009-11-21 21:40:57 +01:00
Makefile Makefile: Mention "./configure --help" now that it exists. 2009-12-04 16:09:40 -08:00
Makefile.local fix Makefile.local to install bash completion definitions as not executable 2009-12-04 16:14:39 -08:00
notmuch-client.h Make the add_files function static within notmuch-new.c. 2010-01-06 10:32:06 -08: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 Add 'notmuch count' command to show the count of matching messages 2009-11-23 06:33:54 +01:00
notmuch-dump.c lib/query: Drop the first and max_messages arguments from search_messages. 2009-11-23 20:25:13 -08:00
notmuch-new.c notmuch new: Fix regression preventing recursion through symlinks. 2010-01-06 10:32:06 -08:00
notmuch-reply.c notmuch-reply: Display reply message part using UTF-8. 2009-12-03 16:47:47 -08:00
notmuch-restore.c Rename NOTMUCH_DATABASE_MODE_WRITABLE to NOTMUCH_DATABASE_MODE_READ_WRITE 2009-11-21 22:10:18 +01:00
notmuch-search-tags.c search-tags: Add support for search-terms. 2009-11-26 07:06:41 -08:00
notmuch-search.c notmuch search: Remove the chunked-searching hack. 2009-11-23 20:17:37 -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 show: Preserve thread-ordering and nesting without --entire-thread 2009-12-02 16:14:41 -08:00
notmuch-tag.c Avoid compiler warnings due to ignored write return values 2009-12-01 07:50:35 -08:00
notmuch-time.c Add some const correctness to talloc 'ctx' parameter. 2009-11-17 19:10:37 -08:00
notmuch.1 notmuch new: Remove hack to ignore read-only directories in mail store. 2010-01-06 10:32:05 -08:00
notmuch.c notmuch new: Remove hack to ignore read-only directories in mail store. 2010-01-06 10:32:05 -08:00
notmuch.desktop Missing final semi-colon in .desktop's Categories. 2009-11-22 13:26:20 +01:00
notmuch.el emacs: Add instructions to the hidden citations/signatures. 2009-12-11 15:54:53 -08:00
query-string.c notmuch: Break notmuch.c up into several smaller files. 2009-11-10 12:03:05 -08:00
README README: Mention the actual mailing list address now that it exists. 2009-11-18 03:24:27 -08:00
show-message.c notmuch show: Don't hide a digital signature. 2009-11-21 01:00:41 +01:00
TODO emacs: Fix '+' and '-' in case of thread no longer matching current search. 2009-12-10 10:35:18 -08:00

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

Notmuch is a system for indexing, searching, reading, and tagging
large collections of email messages. It uses the Xapian library to
provide fast, full-text search of very large collection of email with
a very 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.