notmuch clon
Find a file
David Bremner 55524bb063 lib: regexp matching in 'subject' and 'from'
the idea is that you can run

% notmuch search subject:/<your-favourite-regexp>/
% notmuch search from:/<your-favourite-regexp>/

or

% notmuch search subject:"your usual phrase search"
% notmuch search from:"usual phrase search"

This feature is only available with recent Xapian, specifically
support for field processors is needed.

It should work with bindings, since it extends the query parser.

This is easy to extend for other value slots, but currently the only
value slots are date, message_id, from, subject, and last_mod. Date is
already searchable;  message_id is left for a followup commit.

This was originally written by Austin Clements, and ported to Xapian
field processors (from Austin's custom query parser) by yours truly.
2017-03-03 17:46:48 -04:00
bindings update version to 0.23.7 2017-02-28 20:49:24 -04:00
compat Use https instead of http where possible 2016-06-05 08:32:17 -03:00
completion completion: complete notmuch emacs-mua 2017-03-01 19:33:33 -04:00
contrib fixed wrong constant values 2016-09-03 20:15:46 -03:00
debian add changelog stanza for 0.23.7-1 2017-02-28 20:39:59 -04:00
devel cli/show: add content-disposition to structured output message parts 2017-02-28 08:03:00 -04:00
doc lib: regexp matching in 'subject' and 'from' 2017-03-03 17:46:48 -04:00
emacs emacs/desktop: update to use notmuch-emacs-mua and handle mailto 2017-03-01 19:33:52 -04:00
lib lib: regexp matching in 'subject' and 'from' 2017-03-03 17:46:48 -04:00
packaging Use https instead of http where possible 2016-06-05 08:32:17 -03:00
parse-time-string Use https instead of http where possible 2016-06-05 08:32:17 -03:00
performance-test Use https instead of http where possible 2016-06-05 08:32:17 -03:00
test lib: regexp matching in 'subject' and 'from' 2017-03-03 17:46:48 -04:00
util build & util: drop byte order configure check and endian util header 2017-01-08 10:50:49 -04:00
vim VIM: Improve performance of folders_render 2015-01-23 18:18:54 +01:00
.dir-locals.el .dir-locals.el: changed one-char comment prefix '; ' to two; '; ; ' 2012-01-22 08:41:37 -04:00
.gitignore gitignore: ignore sh.config and doc/config.dox 2014-10-28 12:12:33 +01:00
.mailmap create .mailmap file (for git shortlog/blame) 2016-07-29 06:01:44 +09:00
.travis.yml travis: Only notify IRC on success if the previous build failed 2014-08-05 08:03:05 -03:00
AUTHORS Drop date.c file, (use identical function from GMime instead). 2009-11-02 14:36:33 -08:00
command-line-arguments.c cli: add support for hierarchical command line option arrays 2014-11-05 23:17:00 +01:00
command-line-arguments.h cli: add support for hierarchical command line option arrays 2014-11-05 23:17:00 +01:00
configure Merge branch 'release' 2017-02-28 21:21:07 -04:00
COPYING Use https instead of http where possible 2016-06-05 08:32:17 -03:00
COPYING-GPL-3 Use https instead of http where possible 2016-06-05 08:32:17 -03:00
crypto.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
debugger.c Use https instead of http where possible 2016-06-05 08:32:17 -03: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
hooks.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
INSTALL Use https instead of http where possible 2016-06-05 08:32:17 -03:00
Makefile build: Move variable definitions to Makefile.global 2016-11-26 07:46:42 -04:00
Makefile.global build: use sha256sum instead of sha1sum to sign releases 2017-03-02 17:31:15 -04:00
Makefile.local build: use sha256sum instead of sha1sum to sign releases 2017-03-02 17:31:15 -04:00
mime-node.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
NEWS NEWS: add news for 0.23.7 2017-02-28 20:46:53 -04:00
notmuch-client.h cli/config: don't try to open config file for 'notmuch help' 2017-02-28 08:08:11 -04:00
notmuch-compact.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch-config.c notmuch-config: ENOENT vs generic handling when file open fails. 2017-02-28 08:08:26 -04:00
notmuch-count.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch-dump.c CLI: add properties to dump output 2016-09-21 18:14:25 -03:00
notmuch-insert.c cli/insert: return EX_TEMPFAIL for some errors 2016-12-07 07:00:40 -04:00
notmuch-new.c cli: don't call _entry_in_ignore_list twice in count files debug 2017-01-27 22:05:05 -04:00
notmuch-reply.c cli/reply: only pass gmime message to add recipients to reply message 2016-09-17 09:20:12 -03:00
notmuch-restore.c cli: optionally restore message properties from dump file 2016-09-21 18:14:25 -03:00
notmuch-search.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch-setup.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch-show.c cli/show: add content-disposition to structured output message parts 2017-02-28 08:03:00 -04:00
notmuch-tag.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch-time.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
notmuch.c cli/config: don't try to open config file for 'notmuch help' 2017-02-28 08:08:11 -04:00
query-string.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
README Use https instead of http where possible 2016-06-05 08:32:17 -03:00
README.rst Use https instead of http where possible 2016-06-05 08:32:17 -03:00
sprinter-json.c sprinters: bugfix when NULL passed for a string. 2012-08-12 21:25:01 +02:00
sprinter-sexp.c Use https instead of http where possible 2016-06-05 08:32:17 -03:00
sprinter-text.c sprinter: add text0 formatter for null character separated text 2012-12-18 17:03:34 -04:00
sprinter.h sprinter: add text0 formatter for null character separated text 2012-12-18 17:03:34 -04:00
status.c cli/insert: return EX_TEMPFAIL for some errors 2016-12-07 07:00:40 -04:00
tag-util.c cli: add missing \n in error message 2014-03-06 07:46:27 -04:00
tag-util.h cli: export function for illegal tag checking 2014-03-06 07:41:38 -04:00
version update version to 0.23.7 2017-02-28 20:49:24 -04: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.

Running notmuch
---------------
After installing notmuch, start by running "notmuch setup" which will
interactively prompt for configuration information such as your name,
email address, and the directory which contains your mail archive to
be indexed. You can change any answers later by running "notmuch
setup" again or by editing the .notmuch-config file in your home
directory.

With notmuch configured you should next run "notmuch new" which will
index all of your existing mail. This can take a long time, (several
hours) if you have a lot of email, (hundreds of thousands of
files). When new mail is delivered to your mail archive in the future,
you will want to run "notmuch new" again. These runs will be much
faster as they will only index new messages.

Finally, you can prove to yourself that things are working by running
some command-line searches such as "notmuch search
from:someone@example.com" or "notmuch search subject:topic". See
"notmuch help search-terms" for more details on the available search
syntax.

The command-line search output is not expected to be particularly
friendly for day-to-day usage. Instead, it is expected that you will
use an email interface that builds on the notmuch command-line tool or
the libnotmuch library.

Notmuch installs a full-featured email interface for use within
emacs. To use this, first add the following line to your .emacs file:

	(autoload 'notmuch "notmuch" "Notmuch mail" t)

Then, either run "emacs -f notmuch" or execute the command "M-x
notmuch" from within a running emacs.

If you're interested in a non-emacs-based interface to notmuch, then
please join the notmuch community. Various other interfaces are
already in progress, (an interface within vim, a curses interface,
graphical interfaces based on evolution, and various web-based
interfaces). The authors of these interfaces would love further
testing or contribution. See contact information below.

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

	https://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