aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* emacs: notmuch-hello: Make widget-keymap a parent of notmuch-hello-keymapGravatar Nelson Elhage2010-06-03
| | | | | | This lets us pick up later changes to widget-keymap if the user customizes it in some way. This is the recommended way to use `widget-keymap', according to its help.
* add missing docstring for functionsGravatar Sebastian Spaeth2010-06-03
| | | | | | | The '?' key bindings uses them for the help window and these are currently empty. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* Make notmuch-hello a mode.Gravatar Sebastian Spaeth2010-06-03
| | | | | | | | | | This enables the nifty '?' key binding to work in notmuch-hello (although for some strange reasons I don't see any descriptions for specific key bindings yet. Not sure how that is supposed to work though. But this starts, runs and behaves identical to the existing code. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* emacs: Remove notmuch-hello-roundup functionGravatar Sebastian Spaeth2010-06-03
| | | | as it does the same as (ceiling number divisor) which is already provided in elisp.
* Add support for the Solaris platformGravatar Tomas Carnecky2010-06-03
| | | | | | Like on Mac OS X, the linker doesn't automatically resolve dependencies. Signed-off-by: Tomas Carnecky <tom@dbservice.com>
* configure: Respect LDFLAGS from the environment.Gravatar Tomas Carnecky2010-06-03
| | | | | | | | | | The configure usage string documents that it respects LDFLAGS, but currently it doesn't do anything with the configure-time LDFLAGS value. Signed-off-by: Tomas Carnecky <tom@dbservice.com> [Tomas and Nelson sent almost identical patches which I've merged together here.]
* emacs: In hello mode, bind `C-tab' to move backwards through widgets.Gravatar David Edmondson2010-06-03
| | | | `C-tab' is now the inverse operation to `tab'.
* emacs: Reuse rather than reinvent message header filteringGravatar Sebastian Spaeth2010-06-03
| | | | | | | | | | | | In notmuch-mua-reply we were filtering out the Subject and To headers manually in a loop, but message mode offers a nice function for exactly that. Simplify the code by using it. Also, as notmuch-mua-mail already sorts and hides headers that we want sorted and hidden, we can safely remove those 2 functions from here as well. Also remove the (require 'cl), the only reason for its existence was the now removed "loop" function. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* emacs: Allow tuning of the tag/saved search layout.Gravatar David Edmondson2010-06-03
| | | | | | | | | | | | | | | | | | | | Add `notmuch-column-control', which has three potential sets of values: - t: automatically calculate the number of columns per line based on the tags to be shown and the window width, - an integer: a lower bound on the number of characters that will be used to display each column, - a float: a fraction of the window width that is the lower bound on the number of characters that should be used for each column. So: - if you would like two columns of tags, set this to 0.5. - if you would like a single column of tags, set this to 1.0. - if you would like tags to be 30 characters wide, set this to 30. - if you don't want to worry about all of this nonsense, leave this set to `t'.
* emacs: Allow control over faces for search mode columns.Gravatar David Edmondson2010-06-03
| | | | | | | | Add face declarations for the date, count, matching author and subject columns in search mode and apply those faces when building the search mode display. Approved-by: Jameson Rollins <jrollins@finestructure.net>
* emacs: Set the `face' property rather than `font-lock-face'.Gravatar David Edmondson2010-06-03
| | | | Avoid using face properties reserved for the font-lock package.
* emacs: Display non-matching authors with a different face.Gravatar David Edmondson2010-06-03
| | | | | | In search mode some messages don't match the search criteria. Show their authors names with a different face - generally darker than those that do match.
* NEWS: describe easier FCC configurationGravatar Sebastian Spaeth2010-06-03
| | | | | | | | | I know I should be writing something witty here to make cworth happy, but I can't think for any verbose justification of this patch beyond that submitting a NEWS blurb will make cworth happy too. So let's make him happy. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* Easier way to define a fcc directoryGravatar Sebastian Spaeth2010-06-03
| | | | | | | | | | | | | In the common case that a user only has one FCC (save outgoing mail in the Mail directory, it is now possible to simply configure a string such as "Sent" in the notmuch-fcc-dirs variable. More complex options, depending on a users email address, are possible and described in the variable customization help text. The whole function notmuch-fcc-header-setup has been cleaned up a little while working on that. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* emacs: Usability improvements for `notmuch-hello'.Gravatar David Edmondson2010-06-03
| | | | | | | - If no saved searches exist or are displayed, don't signal an error, - If no saved searches exist or are displayed, leave the cursor in the search bar, - Minor layout improvements.
* Add a test case for the previous commit.Gravatar Carl Worth2010-06-03
| | | | | | | | | | | The commit said it fixed a problem with headers >200 characters long. But examination of the code suggests that it was a header of exactly 200 characters long that caused the problem. So we add a test case for that here. Before the fix in the previous commit, valgrind would detect many errors when replying to the message created with this test case. After that commit, those errors are gone.
* notmuch: Fix off-by-one errors if a header is >200 characters long.Gravatar David Edmondson2010-06-01
| | | | | | | | | | | | | If a single header is more than 200 characters long a set of 'off by one' errors cause memory corruption. When allocating memory with: a = malloc (len); the last usable byte of the memory is 'a + len - 1' rather than 'a + len'. Fix the same bug when calculating the current offset should the buffer used for collecting the output header need to be reallocated.
* Makefile: Improve the "what to do now" message from "make install"Gravatar Carl Worth2010-06-01
| | | | | | | | This was already telling the user how to run notmuch within emacs, but not how to just run the notmuch command-line interface, (which, as it turns out, is a prerequisite for running the emacs interface anyway). So add a small paragraph here.
* INSTALL/README: Clean up the description of how to run the emacs interface.Gravatar Carl Worth2010-06-01
| | | | | | | | | | | The INSTALL file still had old information about the "make install-emacs" command which no longer exists. README was also giving pointers on how to develop a real interface, (which is not the right thing since README should be addressed to users, not coders). So remove the stale and misplaced information, and instead add a new "Running notmuch" section to the README describing how to run the notmuch command-line interface and how to run the emacs interface.
* INSTALL: Note the advantages of Xapian 1.0.18+ and 1.1.4+Gravatar Carl Worth2010-06-01
| | | | | | | | | These versions provide greatly desired performance advantages for notmuch. Previously, theses details existed in an old NEWS entry, but most users are unlikely to find those details there. Put them here where we mention the Xapian dependency.
* TODO: Add idea for fixing "notmuch count" to always be exact.Gravatar Carl Worth2010-06-01
| | | | | | I had previously thought Xapian only offered an estimate for the number of results that might match a search. But Olly let me know that we can easily ask for Xapian to provide the exact count.
* TODO: Add a note that 'a'rchive should only affect open messages.Gravatar Carl Worth2010-06-01
| | | | To avoid accidentally archiving messages that have not been read.
* python: have docs reflect current return value behaviorGravatar Sebastian Spaeth2010-05-18
| | | | | | | | | | | | Database.find_message() used to be able to reliably indicate whether a message exists or not (in which case it returns None). However, the recent API change of the notmuch library means we will return None even for all Xapian exceptions, which happens e.g. when the current Database has been modified by another project. Therefore the return value of None cannot be reliably be used to indicate whether a message exists or not. Make the docs state that explicitely. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* Merge branch '0.3.x' immediately after the 0.3.1 releaseGravatar Carl Worth2010-04-27
|\ | | | | | | | | This brings one bug fix into master that was originally applied directly to the 0.3.x branch.
| * debian: Instruct git-buildpackage that it's OK to build from this branchGravatar Carl Worth2010-04-27
| | | | | | | | | | | | | | I wish I had something with better support for a native Debian package here. I shouldn't ever have to configure any branch---I just want it to build a package from the current branch. Instead it makes me tell it (twice!) what the current branch actually is.
| * debian/changelog: Copy in content from the NEWS file.Gravatar Carl Worth2010-04-27
| | | | | | | | Someday we'll automate this step.
| * Increment version to 0.3.1Gravatar Carl Worth2010-04-27
| | | | | | | | For our 0.3.1 bug-fix release.
| * NEWS: Reword the latest bug description slightly.Gravatar Carl Worth2010-04-27
| | | | | | | | | | | | | | "Still needs to be handled correctly" could be misread to suggest that the bug has not actually been fixed yet. So clarify what is actually meant here, (that the bug is unlikely but we're still motivated to fix it).
| * Update NEWS to reflect the SEGV bugfixGravatar Dirk Hohndel2010-04-27
| | | | | | | | Signed-off-by: Dirk Hohndel <hohndel@infradead.org>
| * Fix SEGV in _thread_cleanup_author if author ends with ', 'Gravatar Dirk Hohndel2010-04-27
| | | | | | | | | | | | | | | | | | | | Admittedly, an author name ending in ',' guarantees this is spam, and indeed this was triggered by a spam email, but that doesn't mean we shouldn't handle this case correctly. We now check that there is actually a component of the name (presumably the first name) after the comma in the author name. Signed-off-by: Dirk Hohndel <hohndel@infradead.org>
* | Merge branch '0.3.x'Gravatar Carl Worth2010-04-27
|\| | | | | | | | | | | | | | | This doesn't pull in any code, (everything in 0.3.x was originally cherry-picked from master anyway). But the merge does give us a correct NEWS file showing which fixes are included in 0.3.1 and which features have been commited "since" then, (topologically, not chronologically).
| * NEWS: Add notes for the 0.3.1 releaseGravatar Carl Worth2010-04-27
| | | | | | | | | | This is going to be a bug-fix only release to fix the handful of issue noticed immediately after 0.3 was pushed out.
| * Wrap the compat header in extern "C" { } when compiling C++ sourcesGravatar Tomas Carnecky2010-04-27
| | | | | | | | | | | | | | This fixes a build error on OpenSolaris where the final liking of notmuch fails because the linker can't find strcasestr() referenced from thread.cc. (cherry picked from commit aab54b4ce752b16725399d1543602ef3f7736c91)
| * emacs: Remove conditional from notmuch-fcc-initialization.Gravatar Jesse Rosenthal2010-04-27
| | | | | | | | | | | | | | | | The fcc code would only initialize if notmuch-fcc-dirs was set. This was a problem if you reset the variable, or added the variable later during initialization. Now we always add the fcc hook, but it doesn't do anything unless notmuch-fcc-dirs are set. (cherry picked from commit 80a90787163690d2d87571327ba504a470798c60)
| * emacs: Fix `notmuch-hello-insert-tags' to correctly draw the tags.Gravatar David Edmondson2010-04-27
| | | | | | | | | | | | | | | | The fix in 1e1871154341cdd3413fe3f32e3aae477826d815 broke end-of-row wrapping when drawing the table of tags/saved searches. Fix that and improve the readability of the matrix reflection code to hasten future debugging. (cherry picked from commit 08561d8ae133704fcf15edbdd47f15474dc030d5)
| * emacs: If 'all tags' is not shown, don't use it when calculating widths.Gravatar David Edmondson2010-04-27
| | | | | | | | | | | | | | If the 'all tags' section of the hello buffer will not be shown, don't consider those tags when determining the number of saved searches that can be displayed on a single line. (cherry picked from commit 18d41192d2cf0c71045c2f6420eb2311553f58b4)
| * Rename already used counter var iGravatar Aneesh Kumar K.V2010-04-27
| | | | | | | | | | | | | | | | i is already used in a for loop at this point, so using i here again broke notmuch-reply (it would just hang). Use j instead of i here. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de> (cherry picked from commit 107f58d517e733c53e9d669457db34622337931d)
| * test: Exercise magic-from guessing with a single configured addressGravatar Carl Worth2010-04-27
| | | | | | | | | | | | | | | | | | | | | | Immediately after releasing 0.3 we learned that the magic-from-guessing code could hang in an infinite loop in some cases. The bug occurred only when the user had configured only a primary email addresss and no other email addresses. The test suite wasn't previously covering this case, so address this shortcoming. (cherry picked from commit e0f561049809f2b29068d59b38fce3213131bbd6)
* | NEWS: Note build fix for OpenSolaris (at least).Gravatar Carl Worth2010-04-27
| | | | | | | | | | | | This hit the list just as I sent out my "final call for 0.3.1 testing" and is just the kind of thing that's nice to get into a maintenance release.
* | Wrap the compat header in extern "C" { } when compiling C++ sourcesGravatar Tomas Carnecky2010-04-27
| | | | | | | | | | | | This fixes a build error on OpenSolaris where the final liking of notmuch fails because the linker can't find strcasestr() referenced from thread.cc.
* | NEWS: Add notes for the 0.3.1 releaseGravatar Carl Worth2010-04-27
| | | | | | | | | | I think this is ready to go now, but I'm going to impose a mandatory waiting period this time to catch any last-minute issues.
* | Add notmuch-message.el to emacs/Makefile.localGravatar Jesse Rosenthal2010-04-27
| | | | | | | | | | When notmuch-message.el was added to the emacs directory, I neglected to add it to the makefile as one of the emacs_sources. This patch adds it.
* | test: Exercise magic-from guessing with a single configured addressGravatar Carl Worth2010-04-27
| | | | | | | | | | | | | | | | | | | | Immediately after releasing 0.3 we learned that the magic-from-guessing code could hang in an infinite loop in some cases. The bug occurred only when the user had configured only a primary email addresss and no other email addresses. The test suite wasn't previously covering this case, so address this shortcoming.
* | emacs: Remove conditional from notmuch-fcc-initialization.Gravatar Jesse Rosenthal2010-04-27
| | | | | | | | | | | | | | The fcc code would only initialize if notmuch-fcc-dirs was set. This was a problem if you reset the variable, or added the variable later during initialization. Now we always add the fcc hook, but it doesn't do anything unless notmuch-fcc-dirs are set.
* | Subject: [PATCH] NEWS: add mention of auto-tagging.Gravatar Jesse Rosenthal2010-04-27
| | | | | | | | Describe new auto-tagging functionality in the NEWS.
* | emacs: require notmuch-message.el from notmuch.elGravatar Jesse Rosenthal2010-04-27
| | | | | | | | | | | | Add a (require 'notmuch-message) to notmuch.el. This is for functions that specifically target message mode (and, in the future, notmuch-message mode).
* | emacs: Add auto-tagging for replied messages.Gravatar Jesse Rosenthal2010-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `notmuch-message-mark-replied', a function for automatically tagging replied messages with user-defined tags. The tags (which can be either added or removed) can be customized with the customization variable `notmuch-message-replied-tags'. This is a simple list of strings. Any string prefaced with a "-" will be removed; any string prefaced with a "+" (or neither "+" nor "-") will be added. This adds a new file notmuch-message.el, for functions which target message mode (and in the future, notmuch-message mode). Based on some conversation, notmuch-message.el will probably end up subsuming notmuch-mua.el, but until we figure out exactly how we want to do that, they will remain separate files. Edited-by: Carl Worth <cworth@cworth.org>: Remove trailing whitespace and add newline at end of file.
* | emacs: Add missing parenthesis that was breaking the build.Gravatar Carl Worth2010-04-27
| | | | | | | | | | Someday I'll stop pushing patches without at least compile-testing them. *sigh*
* | emacs/notmuch-wash.el: Add `notmuch-wash-convert-inline-patch-to-part'.Gravatar David Edmondson2010-04-27
| | | | | | | | | | | | Detect inline patches and convert them to fake attachments, in order that `diff-mode' highlighting can be applied to the patch. This can be enabled by customising `notmuch-show-insert-text/plain-hook'.
* | emacs: Fix `notmuch-hello-insert-tags' to correctly draw the tags.Gravatar David Edmondson2010-04-27
| | | | | | | | | | | | | | The fix in 1e1871154341cdd3413fe3f32e3aae477826d815 broke end-of-row wrapping when drawing the table of tags/saved searches. Fix that and improve the readability of the matrix reflection code to hasten future debugging.