summaryrefslogtreecommitdiffstats
path: root/contrib
AgeCommit message (Collapse)Author
2020-08-12notmuch-mutt: replace shell pipeline with internal pipe processingTomi Ollila
The shell pipeline used to symlink files based in search results to "cache" directory for mutt(1) to use was prone to portability problems (due to /bin/sh differences). The replacement executes `notmuch search` without intermediate shell (so shell_quote was removed in this case), reads the filenames from piped output and symlinks files internally.
2020-03-22Make notmuch-mutt script more portableGreg Anders
The -D flag to install (used in the Makefile) is GNU-specific and does not work on BSD distributions (i.e. macOS). Likewise with the xargs -r flag. These changes use portable alternatives to these flags while preserving the exact behavior.
2018-09-18contrib/notmuch-mutt: add install targetDavid Bremner
The main goal here is to be able to install the notmuch-mutt script with an absolute shebang. I have tried to make the notmuch-mutt Makefile use configure information from notmuch if available, but make suitable guesses if not.
2018-03-24Fix typos as found by codespellGeorg Faerber
Signed-off-by: Georg Faerber <georg@riseup.net>
2018-01-04fix typosDaniel Kahn Gillmor
2017-08-23database: add n_d_index_file (deprecates n_d_add_message)Daniel Kahn Gillmor
We need a way to pass parameters to the indexing functionality on the first index, not just on reindexing. The obvious place is in notmuch_database_add_message. But since modifying the argument list would break both API and ABI, we needed a new name. I considered notmuch_database_add_message_with_params(), but the functionality we're talking about doesn't always add a message. It tries to index a specific file, possibly adding a message, but possibly doing other things, like adding terms to an existing message, or failing to deal with message objects entirely (e.g. because the file didn't contain a message). So i chose the function name notmuch_database_index_file. I confess i'm a little concerned about confusing future notmuch developers with the new name, since we already have a private _notmuch_message_index_file function, and the two do rather different things. But i think the added clarity for people linking against the future libnotmuch and the capacity for using index parameters makes this a worthwhile tradeoff. (that said, if anyone has another name that they strongly prefer, i'd be happy to go with it) This changeset also adjusts the tests so that we test whether the new, preferred function returns bad values (since the deprecated function just calls the new one). We can keep the deprecated n_d_add_message function around as long as we like, but at the next place where we're forced to break API or ABI we can probably choose to drop the name relatively safely. NOTE: there is probably more cleanup to do in the ruby and go bindings to complete the deprecation directly. I don't know those languages well enough to attempt a fix; i don't know how to test them; and i don't know the culture around those languages about API additions or deprecations.
2017-08-18Use rooted paths in .gitignore filesVladimir Panteleev
A leading / in paths in a .gitignore file matches the beginning of the path, meaning that for patterns without slashes, git will match files only in the current directory as opposed to in any subdirectory. Prefix relevant paths with / in .gitignore files, to prevent accidentally ignoring files in subdirectories and possibly slightly improve the performance of "git status".
2016-09-03fixed wrong constant valueslaochailan
before, they were both zero, so getting a read-writeable handle was impossible.
2016-09-03Added thread bindings to go bindingslaochailan
2016-09-03bindings: move go bindings to contribDavid Bremner
This signals two things, an intent to be more liberal about accepting patches, and an intent to stop distributing the bindings if maintenance doesn't pick up.
2016-09-03contrib: remove old copy of vim front endDavid Bremner
Having two in the tree is just confusing. And the viml one is even more out of date than the ruby one.
2016-06-05Use https instead of http where possibleDaniel Kahn Gillmor
Many of the external links found in the notmuch source can be resolved using https instead of http. This changeset addresses as many as i could find, without touching the e-mail corpus or expected outputs found in tests.
2016-04-30notmuch-mutt: use env to locate perl for increased portabilityStefano Zacchiroli
Note: this patch drops -w from the shebang line, but we still have "use warnings" in the script, which is superior anyhow. Thanks Andreas Tolfsen for the suggestion.
2015-05-04notmuch-mutt: fix xargs/ln usage for OpenBSD compatibilityJack Peirce
- xargs: use -r flag instead of --no-run-if-empty - ln: use -I flag/3rd form of ln command instead of -t flag/4th form Signed-off-by: Stefano Zacchiroli <zack@upsilon.cc>
2015-02-16notmuch-mutt: support for messages that lack Message-ID headersStefano Zacchiroli
For those messages, compute a synthetic Message-ID based on the SHA1 of the whole message, in the same way that notmuch would do. See: http://git.notmuchmail.org/git/notmuch/blob/HEAD:/lib/sha1.c To do the above, rewrite get_message_id() to accumulate header lines, parse them to check for Message-ID, and fallback to SHA1 computation if it is not present. Thanks to: - Jan N. Klug for preliminary versions of this patch - Tomi Ollila for suggesting an elegant implementation
2015-02-16notmuch-mutt README: use metacpn.org/* as deps homepagesStefano Zacchiroli
2015-02-16notmuch-mutt: bump copyright yearStefano Zacchiroli
2015-01-14contrib: remove notmuch deliverDavid Bremner
contrib/notmuch-deliver is presumed obsoleted by notmuch-insert.
2013-11-13remove notmuch-pickMark Walters
2013-11-07test: move emacs-tree test into mainlineMark Walters
We move the emacs-tree test and associated files into the main test directory and add the test to the list in notmuch-test.
2013-11-07emacs: move notmuch-tree from contrib to mainlineMark Walters
2013-11-07emacs: tree: remove unneeded declarationsMark Walters
There are some crufty declare-functions and requires in notmuch-tree: since it requires notmuch.el itself this all works but in preparation for the move to mainline tidy this up.
2013-10-29pick: rename test emacs-pick to emacs-treeMark Walters
Also fixup run-tests.sh
2013-10-29pick: rename test outputs from pick to treeMark Walters
Rename all the test output files to tree rather than pick, move the containing directory to a tree.expected-output and fix up the references in the test.
2013-10-29pick: Change the test names and print out for pick testsMark Walters
Change from the pick name to the tree name
2013-10-29contrib: pick: move lisp names from pick to treeMark Walters
This changes all the lisp names from pick to tree (variables, functions etc). It also changes the lisp in the emacs-pick test files to match the new names.
2013-10-25pick: Use interactive specifications for tag changesAustin Clements
2013-10-25pick: Use list form of tag-changes in testAustin Clements
Currently we support both string and list forms of tag-changes for historical reasons. This is about to change, so fix pick's tests that use the legacy string form of tag-changes.
2013-10-25pick: Fix incorrect use of `notmuch-pick-tag'Austin Clements
`notmuch-pick-tag' takes a list of tag changes, but `notmuch-pick-archive-message' passes it a &rest argument. This happens to work if `notmuch-archive-tags' contains a single tag (which it usually does), but will break if it does not.
2013-10-14contrib: pick: update notmuch-show callsMark Walters
Remove some unneeded nil arguments in notmuch-show calls.
2013-10-02contrib: pick: remove temporary keybindingMark Walters
We would like to bind prefix-arg RET in search view to "pick show this thread" (i.e. notmuch-pick-from-search-thread). It is not easy to do this cleanly from contrib so I have been using M-RET instead. Temporarily remove this functionality in preparation for entering mainline and binding to prefix-arg RET.
2013-10-02contrib: pick: move M-RET to prefix-arg RETMark Walters
In pick the user has the option of showing the selected message in a subpane (the message pane) or in the full frame. This is customisable using the variable notmuch-pick-show-out. At the moment RET is bound to the default option and M-RET the other option. This is messy and involves tricks to make sure the keymap is setup at the right time. This changes this to prefix-arg RET for the other option which simplifies the code and makes things cleaner.
2013-09-23contrib: pick: tidy up pick-format-fieldMark Walters
Previously this function used a temporary variable to store the return value but we can just use the return value of the cond statement directly. The only tiny subtlety is that in one case (subject) we need to slightly reorder the logic to make sure the formatted-field is the last thing computed.
2013-09-23contrib: pick: remove unused notmuch-pick-from-helloMark Walters
This function was used for pick entry from hello but isn't needed anymore. It was modelled on notmuch-hello-search which is now only used non-interactively (and notmuch-pick does now add to the recent-search history correctly).
2013-09-23contrib: pick: use the new notmuch-common-keymap for pick entryMark Walters
Austin recently added a global keymap: use this for pick entry.
2013-09-23contrib: pick: remove some superfluous quotesMark Walters
Pick adds some keybindings to keymaps for other modes (for entry to pick). These quoted the keymaps which appears to be unnecessary and to rely on the fact that these keymaps have the same entry in the function cell as the value cell (perhaps for historical reasons?) Remove these quotes.
2013-09-15contrib: pick: make the tree graphics a proper part of the formatMark Walters
Previously the box graphics in the pick view were always attached to the subject. Make them a field in their own right. We use the recursive insert to change the default notmuch-pick-result-format so that the user view does not change. (The subject touches the tree box graphics but the next column (tags) is still vertically aligned.)
2013-09-15contrib: pick: allow recursive message field formatsMark Walters
Previously, the message format was fixed: each part had to be a certain width and either left or right justified. This allows the user to specify that two parts can be variable width but that combined they should be some fixed width. We do this by allowing the user to set as a "field" a list of the normal result-format form which is formatted and then itself inserted according to the format string specified. This means all existing formats work but allows more general things too. This will be used in the next patch to allow the user to specify where the tree box graphics are drawn but allow, e.g., the total width of the tree box graphics and subject to be specified.
2013-09-15contrib: pick: move the insertion of fields up a levelMark Walters
This moves the actual insertion of message fields up from the field formatting function into the message insertion function. This will be useful in the next patch as we can apply further formatting to the insertion string before inserting.
2013-09-15contrib: pick: print () for a message with no tagsMark Walters
Dating back to the earliest notmuch-pick we have not printed anything for the tag field for a message with no tags. This is inconsistent with search and show both of which print "()". Change pick to be consistent.
2013-09-15contrib: pick: use global keymapMark Walters
Austin recently introduced a new global keymap. This makes pick use this global map. In most cases pick needs to override this global map because it wants to close the message pane before doing the action. However, this documents the over-rides and makes it less likely that the pick bindings will get out of sync with the main bindings.
2013-09-15contrib: pick: bugfix use of mini-buffer historyMark Walters
pick was meant to use the same mini-buffer history but this failed because the interactive definition took place before the use search mini-buffer history part. Remove the interactive prompt to ensure the correct history is used.
2013-09-08notmuch-mutt: Fix tagging issuesKevin J. McCarthy
This patch fixes three issues with "notmuch-mutt tag": 1. The message_id was not shell quoted. Thanks to Jason Miller for the bug report and patch. 2. The tags passed into tag_action() were not being properly quoted. The "join before shell_quote" was combining multiple tags into a single argument to notmuch tag: '+one -two -three' instead of '+one' '-two' '-three'. 3. A "--" was added between the tags and search-term as shown in the current notmuch-tag man page. Thanks to Tomi Ollila for suggesting the simple fix of using the list form of system(), which bypasses the shell.
2013-09-08notmuch-mutt: use notmuch --duplicate flagKevin McCarthy
Change notmuch-mutt to use the new --duplicate=1 flag for duplicate removal. This will remove duplicates based on message-id at the notmuch level. Previously we were using fdupes or generating sha sums after the search. This version will be faster, but will enable the possibility of hiding search results due to accidental/malicious duplicate message-ids.
2013-09-04contrib: pick: test: buffer movementMark Walters
2013-09-04contrib: pick: test: stash message idMark Walters
This is important to test as lots of subsequent tests will fail if this fails.
2013-09-04contrib: pick: test: tag/untag whole threadMark Walters
2013-09-04contrib: pick: test: tag/untag single messageMark Walters
2013-09-03contrib: pick: test: refresh viewMark Walters
A recent proposed patch was buggy when refreshing the view. Add a test for refresh so that this does not reoccur.
2013-09-03contrib: pick: add docstring for notmuch-pick-workerMark Walters