aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2019-06-12build: drop variable HAVE_EMACS. use WITH_EMACS insteadDavid Bremner
The extra flexibility of having both HAVE_EMACS (for yes, there is an emacs we can use) and WITH_EMACS (the user wants emacs support) lead to confusion and bugs. We now just force WITH_EMACS to 0 if no suitable emacs is detected.
2019-06-10doc: Don't install emacs docs when they are not builtDavid Bremner
In 40b025 we stopped building the notmuch-emacs documentation if HAVE_EMACS=0 (i.e. no emacs was detected by configure). Unfortunately we continued to try to install the (non-existent) documentation, which causes build/install failures. As a bonus, we also avoid installing the documentation if the user configures --without-emacs. Thanks to Ralph Seichter for reporting the problem, and testing previous versions of this fix.
2019-06-10doc: don't build notmuch-emacs.info for configure --without-emacsDavid Bremner
Since the docstrings are not built in the case of --without-emacs, even if emacs is detected, don't let sphinx build the emacs docs. This avoids a large number of error messages due to missing includes. It's actually a bit surprising sphinx doesn't generate an error for the missing include files.
2019-06-03doc: use separate doctrees for distinct buildersDavid Bremner
It seems our previous attempt with order-only targets was not sufficient to avoid problems with sphinx-builds doctree cache [0]. Looking around at other people's approaches [1], using separate doctrees was suggested. I guess there might be a slight loss of efficiency, but it seems more robust. [0]: build failures were first noticed in Debian experimental, but I was able to duplicate it in my usual build environment about 1 in 8 builds. [1]: in particular https://salsa.debian.org/mpd-team/mpc/commit/9e3fc1657d043d75755993846c93f7700b97f907
2019-05-25doc: document user header indexing.David Bremner
It's a bit odd that the primary documentation is in notmuch-config, but it is consistent with the "query:" prefix.
2019-04-24doc: exclude notmuch-emacs.rst if emacs is not present.David Bremner
This will still generate a warning about an excluded document in the toctree, but it cuts down on the noise quite a lot.
2019-04-24doc: use stamp file for html docsDavid Bremner
These are less time consuming than the texi docs to rebuild (because the texi rebuild triggers info rebuild), but still take noticable time.
2019-04-24doc: use stamp file to control rebuilding texiDavid Bremner
Apparently the sphinx-doc texinfo builder is not smart enough to only rebuild those files where the source has changed.
2019-04-17lib: add 'body:' field, stop indexing headers twice.David Bremner
The new `body:` field (in Xapian terms) or prefix (in slightly sloppier notmuch) terms allows matching terms that occur only in the body. Unprefixed query terms should continue to match anywhere (header or body) in the message. This follows a suggestion of Olly Betts to use the facility (since Xapian 1.0.4) to add the same field with multiple prefixes. The double indexing of previous versions is thus replaced with a query time expension of unprefixed query terms to the various prefixed equivalent. Reindexing will be needed for 'body:' searches to work correctly; otherwise they will also match messages where the term occur in headers (demonstrated by the new tests in T530-upgrade.sh)
2019-03-31doc: document notmuch new --verboseMichal Sojka
2019-03-27doc: Clean up warnings when building notmuch-emacs docsDaniel Kahn Gillmor
Without this change, we see this during the build: sphinx-build -b html -d doc/_build/doctrees -q ./doc doc/_build/html …/doc/notmuch-emacs.rst:67: WARNING: Unexpected indentation. …/doc/notmuch-emacs.rst:165: WARNING: Unexpected indentation. …/doc/notmuch-emacs.rst:306: WARNING: Unexpected indentation. This source change doesn't seem to have any effect on the generated HTML, at least. Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2019-03-19doc/build: use $(MAKE) instead of makeDavid Bremner
This should silence some warnings about the jobserver, but also make it easier to build the docs where GNU make is called something other than make. Based on a patch from aidecoe.
2019-03-06Merge branch 'release'David Bremner
Changes from 0.28.3
2019-03-05doc: sequentialize calls to sphinx-buildDavid Bremner
In certain conditions the parallel calls to sphinx-build could collide, yielding a crash like Exception occurred: File "/usr/lib/python3/dist-packages/sphinx/environment.py", line 1261, in get_doctree doctree = pickle.load(f) EOFError: Ran out of input
2019-02-21Emacs: bind "g" to 'notuch-refresh-this-bufferMatt Armstrong
Using "g" for refresh operations is a pretty common Emacs convention, codified by `special-mode' in simple.el.
2019-02-01Merge tag '0.28.1'David Bremner
notmuch 0.28.1 release
2019-02-01bump copyright yeardebian/0.28.1-1archive/debian/0.28.1-10.28.1David Bremner
2019-01-27doc: fix references to search.exclude_tagsPeter Wang
The documentation incorrectly referred to a configuration item "search.tag_exclude" in some places, instead of "search.exclude_tags".
2018-12-20doc: make man pages depend on emacs docstringsDavid Bremner
This is nonsensical on the face of it, but is needed (for now) because the notmuch-emacs page is unconditionally included in index.rst.
2018-12-08doc/emacs: document notmuch-cycle-notmuch-buffersDavid Bremner
For some reason I couldn't find this when I searched, so add it to the manual.
2018-12-08doc/emacs: document notmuch-poll*David Bremner
The current "documentation" for these variables consists of only the variable names.
2018-12-08doc/emacs: document notmuch-tagging-keysDavid Bremner
Calling these "Global keys" is arguably a bit of a stretch, but they do work in all notmuch modes except notmuch-hello.
2018-12-08doc/emacs: document notmuch-message-headers*David Bremner
More precisely, copy the docstrings into notmuch-emacs documentation pages.
2018-12-08doc/emacs: add documentation for stashing 'c X' bindingsDavid Bremner
This is the first of a series of changes requiring the extracted docstrings.
2018-12-08doc/emacs: require extracted docstrings for sphinx or info manualDavid Bremner
We need to use the stamp file here in order not to depend on the order the submakefiles are included.
2018-11-24cli: notmuch show support for --include-html with --format=textMaxime Coste
2018-11-24cli: notmuch show support for --body=false with --format=textMaxime Coste
2018-06-24doc: clean up manpagesDaniel Kahn Gillmor
Many of the manpages didn't treat literal text as literal text. I've tried to normalize some of the restructured text to make it a bit more regular. several of the synopsis lines are still untouched by this cleanup, but i'm not sure what the right way to represent those is in .rst, actually. In particular find that if i rebuild the manpages, sometimes i end up with some of the synopsis lines showing – (U+2013 EN DASH) where they should have -- (2 × U+002D HYPHEN-MINUS) in the generated nroff output, though i have not tracked down the source of this error yet.
2018-05-26docs: add initial documentation for notmuch-tag-jumpDavid Bremner
This is mainly to improve discoverability. It seems that doing variable cross-references is not easy without using some sphinx extension/customization.
2018-05-26doc: initial documentation for notmuch-tree modeDavid Bremner
2018-05-26doc: initial documentation for notmuch-show-modeDavid Bremner
This is pretty minimal, but will hopefully inspire others to contribute more complete documentation. If nothing else, it points out '?'.
2018-05-26doc: install build and install info pagesDavid Bremner
All of the man pages are installed as info pages, plus the (unfinished) notmuch-emacs manual
2018-05-26cli/show: enable --decrypt=stashDaniel Kahn Gillmor
Add fancy new feature, which makes "notmuch show" capable of actually indexing messages that it just decrypted. This enables a workflow where messages can come in in the background and be indexed using "--decrypt=auto". But when showing an encrypted message for the first time, it gets automatically indexed. This is something of a departure for "notmuch show" -- in particular, because it requires read/write access to the database. However, this might be a common use case -- people get mail delivered and indexed in the background, but only want access to their secret key to happen when they're directly interacting with notmuch itself. In such a scenario, they couldn't search newly-delivered, encrypted messages, but they could search for them once they've read them. Documentation of this new feature also uses a table form, similar to that found in the description of index.decrypt in notmuch-config(1). A notmuch UI that wants to facilitate this workflow while also offering an interactive search interface might instead make use of these additional commands while the user is at the console: Count received encrypted messages (if > 0, there are some things we haven't yet tried to index, and therefore can't yet search): notmuch count tag:encrypted and \ not property:index.decryption=success and \ not property:index.decryption=failure Reindex those messages: notmuch reindex --try-decrypt=true tag:encrypted and \ not property:index.decryption=success and \ not property:index.decryption=failure
2018-05-22doc: document notmuch new --full-scanDavid Bremner
2018-05-09doc: fix notmuch-search exampleDavid Bremner
For some reason the searched tag did not match the displayed results.
2018-05-07doc: document thread subqueriesDavid Bremner
Mention both performance and quoting issues.
2018-04-24doc: add a section on quoting to notmuch-search-terms(7)David Bremner
I think we've diverged enough from the Xapian query parser that we can't rely on that syntax description [1]. As far as I can tell, [1] also only discusses quotes in the context of phrases. [1]: https://xapian.org/docs/queryparser.html
2018-03-24doc: Examples of notmuch-reindex use and crypto policyDaniel Kahn Gillmor
Currently, notmuch has the levers needed to set coherent crypto policy around how cleartext is indexed, which also has an impact on how messages are rendered. But we don't have a lot of documentation about how to do sensible things. This is an initial attempt to address that. The first example shows a way to selectively index specific messages. The next two examples are about aligning the existing database with crypto indexing policy The default crypto policy is to not index cleartext, and to only decrypt messages on display when explicitly requested. The other sensible crypto policy is to index cleartext while stashing session keys. messages indexed in this way will be searchable, and will be decrypted on display automatically unless the user explicitly asks for it to *not* be decrypted. The policy for indexing *new* messages is stored in the database as the config variable index.decrypt. But setting policy for new messages doesn't retroactively affect already indexed messages. This patch attempts to document ways that someone can efficiently align their pre-existing database with their new policy. I'm not sure this is the right place to document these examples, but i do want them to be user-facing and relatively easy to find. I'm happy to entertain suggestions for where else we should put them.
2018-03-24cli/insert: add --world-readable flagDaniel Kahn Gillmor
In some cases (e.g. when building a publicly-visible e-mail archive) it doesn't make any sense to restrict visibility of the message to the current user account. This adds a --world-readable boolean option for "notmuch insert", so that those who want to archive their mail publicly can feed their archiver with: notmuch insert --world-readable Other local delivery agents (postfix's local, and dovecot's lda) all default to delivery in mode 0600 rather than relying on the user's umask, so this fix doesn't change the default. Also, this does not override the user's umask. if the umask is already set tight, it will not become looser as the result of passing --world-readable. Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2018-03-24Clarify the syntax required when searching using timestamps.Matthew Lear
Need to be clearer about specifying time ranges using timestamps. Legacy syntax which predates the date prefix is still supported, but timestamps used in conjunction with the date prefix require additional syntax.
2018-01-31doc: create manpage folders with right permissionsAntoine Amarilli
Avoids the issue where umask can make man pages unreadable after installation. Relevant email on the mailing-list: <87h8rt30sy.fsf@fifthhorseman.net>
2018-01-04fix typosDaniel Kahn Gillmor
2018-01-01Merge tag '0.26_rc1'David Bremner
notmuch 0.26~rc1 release
2018-01-01doc: add 2018 to copyright yearDavid Bremner
2017-12-31doc/{reply, show}: match indentationDavid Bremner
This is essentially a conflict resolution Jani's normalization and Daniel's doc changes, but it's easier to do as a second commit.
2017-12-31Merge branch 'release'David Bremner
Conflicts: doc/man1/notmuch-reply.rst doc/man1/notmuch-show.rst Conflicts taken from release (dkg's doc changes)
2017-12-31doc: unify definition list usage across man pagesJani Nikula
Make all parameter descriptions etc. use reStructuredText definition lists with uniform style and indentation. Remove redundant indentation from around the lists. Remove blank lines between term lines and definition blocks. Use four spaces for indentation. This is almost completely whitespace and paragraph reflow changes.
2017-12-29cli/reply: make --decrypt take a keywordDaniel Kahn Gillmor
This brings the --decrypt argument to "notmuch reply" into line with the other --decrypt arguments (in "show", "new", "insert", and "reindex"). This patch is really just about bringing consistency to the user interface. We also use the recommended form in the emacs MUA when replying, and update test T350 to match.
2017-12-29cli/show: make --decrypt take a keyword.Daniel Kahn Gillmor
We also expand tab completion for it, update the emacs bindings, and update T350, T357, and T450 to match. Make use of the bool-to-keyword backward-compatibility feature.
2017-12-15cli/new: support /<regex>/ in new.ignoreJani Nikula
Add support for using /<regex>/ style regular expressions in new.ignore, mixed with the old style verbatim file and directory basenames. The regex is matched against the relative path from the database path.