notmuch clon
Find a file
Jameson Rollins 4b9d2e3a4d Simplify "unread" tag handling in emacs UI.
This patch is intended to greatly simplify the handling of the
"unread" tag in the emacs UI.  This patch adds a new function
'notmuch-show-mark-read', that removes the "unread" tag in
notmuch-show-mode.  This function is then executed as a
notmuch-show-hook, and by notmuch-show-next-message.  All of the
functions that explicitly marked messages as unread are removed or
renamed.

The idea here is that the user should never have to worry about
manipulating the "unread" tag.  The tag should persist until the user
actually views a message, at which point it should be automatically
removed.  This patch simplifies the notmuch.el quite a bit, removing a
lot of somewhat redundant functions, and reducing clutter in the name
and key-mapping space.
2010-02-24 16:40:52 -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 Fix printf for when uint64_t != unsigned long long int 2010-02-09 11:14:16 -08:00
packaging/fedora notmuch build: add a RPM spec file 2009-11-20 10:37:38 +01:00
test Switch from random to sequential thread identifiers. 2010-02-09 11:14:11 -08: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 Add install target for notmuch.desktop file. 2010-01-24 07:29:54 +13: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
json.c json: Add copy of MIT license text from cJSON 2010-02-23 12:50:46 -08:00
Makefile Install zsh completion file 2010-01-14 18:12:13 +13:00
Makefile.local Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -08:00
notmuch-client.h Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -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 Fix misspelling of DT_UNKNOWN. 2010-01-23 22:45:23 +13:00
notmuch-reply.c notmuch reply: Rename the mailing_list_munged_reply_to function 2010-02-04 12:42:09 -08:00
notmuch-restore.c notmuch restore: Don't waste time with messages with unchanged tags. 2010-02-05 17:29:56 -08: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: Use "thread" rather than "id" when formatting with JSON 2010-02-23 12:50:46 -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 Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -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 Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -08:00
notmuch.c Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -08:00
notmuch.desktop notmuch.desktop: Clarify that this is the emacs interface to notmuch. 2010-01-24 07:30:08 +13:00
notmuch.el Simplify "unread" tag handling in emacs UI. 2010-02-24 16:40:52 -08:00
query-string.c notmuch: Break notmuch.c up into several smaller files. 2009-11-10 12:03:05 -08:00
README README: Tighten up the text a bit. 2010-01-23 19:00:25 +13:00
show-message.c Add an "--format=(json|text)" command-line option to both notmuch-search and notmuch-show. 2010-02-23 12:01:12 -08:00
TODO TODO: We should fix the --format=json option to not imply --entire-thread. 2010-02-23 12:51:23 -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 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.