aboutsummaryrefslogtreecommitdiff
path: root/emacs
Commit message (Collapse)AuthorAge
* emacs: add default value to notmuch-search-line-facesJani Nikula2012-02-12
| | | | | | | | | | | | | | Add default value to notmuch-search-line-faces to show "unread" messages in bold, and "flagged" messages in blue, to have some visual indication of important messages in search results. This should be helpful for new users. "unread" tag is quite obvious, and handled specially both in the lib and emacs ui. "flagged" is synced to maildir F flag in the lib. If one syncs the maildir to IMAP, this also translates to corresponding IMAP flag. (This is "starred" in GMail and Android.) Signed-off-by: Jani Nikula <jani@nikula.org>
* emacs: make show view a/A/x/X key bindings more consistentJani Nikula2012-02-08
| | | | | | | | | | | | | | | | | | | | | Modify the show view key bindings as follows to make them more consistent: 'a' = Archive current message, then move to next message, or show next thread from search if at the last message in thread. 'A' = Archive each message in thread, then show next thread from search. 'x' = Archive current message, then move to next message, or exit back to search results if at the last message in thread. 'X' = Archive each message in thread, then exit back to search results. The changes make the key bindings more consistent in two ways: 1) 'a'/'A' both advance to the next thread like 'a' used to. 2) 'x' operates on messages and 'X' on threads like 'a'/'A'.
* emacs: s/tags/tag-changes/ for arguments of tagging functionsDmitry Kurochkin2012-02-08
| | | | | | | This makes the argument names more consistent and clear. The following functions changed: `notmuch-tag', `notmuch-search-tag-thread', `notmuch-search-tag-region' and `notmuch-search-tag-all'.
* emacs: accept empty tag list in `notmuch-tag'Dmitry Kurochkin2012-02-08
| | | | | | | Since `notmuch-tag' is a non-interactive function and hence is meant to be invoked programmatically, it should accept zero tags. Also, the tagging operations (bound to "*", "+", "-") would accept empty input without an error.
* emacs: relax tag syntax check in `notmuch-tag' functionDmitry Kurochkin2012-02-08
| | | | | | | | The tag syntax check in `notmuch-tag' function was too strict and did not allow nmbug tags with "::". Since the check is done for all tagging operations in Emacs UI, this basically means that no nmbug tags can be changed. The patch relaxes the tag syntax check to allow any tag names that do not include whitespace characters.
* emacs: separate history for operations which accept single and multiple tagsDmitry Kurochkin2012-02-08
| | | | | | | | | | | | Some tag-related operations accept a single tag without prefix (`notmuch-select-tag-with-completion'), others accept multiple tags prefixed with '+' or '-' (`notmuch-read-tag-changes'). Before the change, both functions used a single default minibuffer history. This is inconvenient because you have to skip options with incompatible format when going through the history. The patch adds separate history lists for the two functions. Note that functions that accept the same input format (e.g. "+", "-", "*") share the history list as before.
* emacs: add "*" binding for notmuch-show viewDmitry Kurochkin2012-02-08
| | | | | | | The patch adds `notmuch-show-tag-all' function bound to "*" in notmuch-show view. The function is similar to the `notmuch-search-tag-all' function for the notmuch-search view: it changes tags for all messages in the current thread.
* emacs: rename `notmuch-search-operate-all' to `notmuch-search-tag-all'Dmitry Kurochkin2012-02-08
| | | | | `Notmuch-search-tag-all' is more clear and consistent with other tagging function names.
* emacs: make "+" and "-" tagging operations in notmuch-show more flexibleDmitry Kurochkin2012-02-08
| | | | | | | | | | Before the change, "+" and "-" tagging operations in notmuch-show view accepted only a single tag. The patch makes them use the recently added `notmuch-read-tag-changes' function, which allows to enter multiple tags with "+" and "-" prefixes. So after the change, "+" and "-" bindings in notmuch-show view allow to both add and remove multiple tags. The only difference between "+" and "-" is the minibuffer initial input ("+" and "-" respectively).
* emacs: make "+" and "-" tagging operations in notmuch-search more flexibleDmitry Kurochkin2012-02-08
| | | | | | | | | | | Before the change, "+" and "-" tagging operations in notmuch-search view accepted only a single tag. The patch makes them use the recently added `notmuch-read-tag-changes' function (renamed `notmuch-select-tags-with-completion'), which allows to enter multiple tags with "+" and "-" prefixes. So after the change, "+" and "-" bindings in notmuch-search view allow to both add and remove multiple tags. The only difference between "+" and "-" is the minibuffer initial input ("+" and "-" respectively).
* emacs: remove text properties from `notmuch-search-get-tags' resultDmitry Kurochkin2012-02-08
|
* emacs: move tag format validation to `notmuch-tag' functionDmitry Kurochkin2012-02-08
| | | | | | | Before the change, tag format validation was done in `notmuch-search-operate-all' function only. The patch moves it down to `notmuch-tag', so that all users of that function get input validation.
* emacs: use mark instead of point-max in MML quoting.David Bremner2012-02-04
| | | | | | | | | | | As Aaron explains in id:"m2vco72tf3.fsf@wal122.wireless-pennnet.upenn.edu" Using point-max would include the signature in the quoting as well. It would probably be fairly odd to want to put an MML tag in one’s signature, but that doesn’t mean that we should break that usage. We had to use point-max in the 0.11.1 bug-fix release, because the mark functionality was added post 0.11.
* Merge commit '0.11.1'David Bremner2012-02-04
|\ | | | | | | | | | | | | | | | | | | Conflicts: NEWS bindings/python/notmuch/database.py bindings/python/notmuch/message.py notmuch.1 NEWS merged by hand, others taken from master.
| * emacs: quote MML tags in repliesAaron Ecay2012-02-03
| | | | | | | | | | | | | | | | | | Emacs message-mode uses certain text strings to indicate how to attach files to outgoing mail. If these are present in the text of an email, and a user is tricked into replying to the message, the user’s files could be exposed. Edited-by: Pieter Praet <pieter@praet.org>: Rebased to release branch.
* | emacs: fix `notmuch-wash-region-to-button' to work at beginning of bufferDmitry Kurochkin2012-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `Notmuch-wash-region-to-button' is the function that creates hidden regions with buttons for signatures, citations and original messages. Before the change, it did not work correctly if the to-be-hidden region started at the beginning of a message: the visibility toggle button was hidden as well. The patch fixes this. There are two parts in the fix: * Use `insert-before-markers' instead of `insert' for creating the button, so that it does not get added to the hidden overlay. * Stop using PREFIX argument for adding a newline before the button. The newline should not be added before a button at the beginning of buffer. The corresponding test is fixed now.
* | emacs: Move the blank line from the bottom of the headers to the top of the ↵David Edmondson2012-02-03
| | | | | | | | | | | | | | | | | | body. The blank line doesn't really change position, but is now considered to be part of the body rather than part of the headers. This means that it is visible when the body is visible rather than when the headers are visible.
* | emacs: More address cleaning.David Edmondson2012-02-03
| | | | | | | | | | | | | | Remove outer single-quotes from the mailbox part. Allow for multiple sets of nested single and double quotes. Add more tests.
* | emacs: Prefer '[No Subject]' to blank subjects.David Edmondson2012-02-03
| |
* | emacs: Stop the `truncate-string-to-width' madness.David Edmondson2012-02-03
| | | | | | | | | | There's no need to call `truncate-string-to-width' twice in this code path.
* | emacs: globally replace non-branching "(if COND (progn ..." with "(when ..."Pieter Praet2012-02-01
| | | | | | | | Less code, same results, without sacrificing readability.
* | emacs: fix show-previous-message doc stringJameson Graef Rollins2012-01-30
| |
* | emacs: modify the default show-mode key bindings for archivingJameson Graef Rollins2012-01-30
| | | | | | | | | | | | | | | | This changes the default key bindings for the 'a' key in notmuch-show mode. Instead of archiving the entire thread, it now just archives the current message, and then advance to the next open message (archive-message-then-next). 'A' is now bound to the previous archive-thread-then-next function.
* | emacs: use pop-at-end functionality in show-archive-message-then-next functionJameson Graef Rollins2012-01-30
| | | | | | | | | | This provides a smoother message processing flow by reducing the number of key presses needed for these common operations.
* | emacs: add option to show-next-{, open-}message functions to pop out to ↵Jameson Graef Rollins2012-01-30
| | | | | | | | | | | | | | | | parent buffer if at end This will allow for keybindings that achieve a smoother message processing flow by reducing the number of key presses needed for most common operations.
* | emacs: add message archiving functionsJameson Graef Rollins2012-01-30
| | | | | | | | | | | | | | This adds two new message archiving functions that parallel the thread archiving functions: notmuch-show-archive-message{,-then-next}. The former also takes a prefix argument to unarchive the message (ie. put back in inbox).
* | emacs: break out thread navigation from notmuch-show-archive-threadJameson Graef Rollins2012-01-30
| | | | | | | | | | | | | | | | | | | | | | This function is now just for archiving the current thread. A new function is created to archive-then-next. The 'a' key binding is updated accordingly. This will allow people to bind to the simple thread archiving function without the extra navigation. The archive-thread function now also takes a prefix to unarchive the current thread (ie. put the whole thread back in the inbox).
* | emacs: break up notmuch-show-archive-thread-internal into two more generally ↵Jameson Graef Rollins2012-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | useful functions Break up notmuch-show-archive-thread-internal into two new functions: notmuch-show-tag-thread-internal: applies a tag to all messages in thread. If option remove flag is t, tags will be removed instead of added. notmuch-show-next-thread: moves to the next thread in the search result. If given a prefix, will show the next result, otherwise will just move to it in the search view. Two new interactive functions, notmuch-show-{add,remove}-tag-thread, are also added. Together, these provide a better suit of thread tagging and navigation tools. The higher level thread archiving functions are modified to use these new function.
* | emacs: use search-next-thread to move to next thread in show modeJameson Graef Rollins2012-01-30
| | | | | | | | | | We should always use the dedicated search mode navigation functions, in case navigation mechanics change down the line.
* | emacs: Don't mark messages as "unsaved" when printing.David Edmondson2012-01-27
| | | | | | | | | | `ps-print-buffer' notes that a buffer is unsaved unless `buffer-modified-p' returns `nil', so ensure that it does.
* | emacs: Another special case for `notmuch-show-clean-address'.David Edmondson2012-01-27
| | | | | | | | Remove backslashes.
* | emacs: Avoid `mail-header-parse-address' in `notmuch-show-clean-address'.David Edmondson2012-01-27
| | | | | | | | | | | | | | | | | | | | `mail-header-parse-address' expects un-decoded mailbox parts, which is not what we have at this point. Replace it with simple string deconstruction. Mark the corresponding test as no longer broken. Minor whitespace cleanup.
* | emacs: Re-enable line wrapping in `notmuch-show-mode'.David Edmondson2012-01-27
| | | | | | | | | | Turn on `visual-line-mode' via a hook, so that those who so choose can avoid it.
* | emacs: `notmuch-search-operate-all' code cleanup, no functional changesDmitry Kurochkin2012-01-27
| |
* | emacs: add completion to "tag all" operation ("*" binding)Dmitry Kurochkin2012-01-27
| | | | | | | | | | The patch adds <tab> completion to "tag all" operation bound to "*" (`notmuch-search-operate-all' function).
* | emacs: polish notmuch-hello help textDmitry Kurochkin2012-01-26
| | | | | | | | Make `=' binding description consistent with others.
* | emacs: Fix a notmuch-print.el compiler warning.David Edmondson2012-01-26
| | | | | | | | `notmuch-show-get-prop' should be declared.
* | emacs: Make the part content available to `mm-inlinable-p'.David Edmondson2012-01-26
| | | | | | | | | | | | | | | | | | | | The `mm-inlinable-p' function works better if it has access to the data of the relevant part, so load that content before calling it. Don't load the content for parts that the user has indicated no desire to inline. This fixes the display of attached image/jpeg parts, for example.
* | emacs: bind "s" to `notmuch-hello-search' in notmuch-hello bufferDmitry Kurochkin2012-01-25
| | | | | | | | | | `notmuch-hello-search' uses `notmuch-search' function but refreshes notmuch-hello buffer when the search buffer is closed.
* | emacs: use a single history for all searchesDmitry Kurochkin2012-01-25
| | | | | | | | | | | | | | | | There are two ways to do search in Emacs UI: search widget in notmuch-hello buffer and `notmuch-search' function bound to "s". Before the change, these search mechanisms used different history lists. The patch makes notmuch-hello search use the same history list as `notmuch-search' function.
* | emacs: bind "s" to `notmuch-search' in notmuch-hello bufferDmitry Kurochkin2012-01-25
| | | | | | | | | | | | Before the change, "s" in notmuch-hello buffer would jump to the search box. The patch changes the binding to `notmuch-search' which is consistent with all other notmuch buffers.
* | emacs: have notmuch-search-archive-thread use -next-thread functionJameson Graef Rollins2012-01-25
| | | | | | | | Use this standard function, to keep thread navigation in one place.
* | emacs/*.el: changed one-char comment prefix ';' to two; ';;'Tomi Ollila2012-01-21
| | | | | | | | | | In order for emacs (indent-region) to (re)indent emacs lisp properly there needs to be at least 2 comment characters (;;).
* | Make buttons for attachments allow viewing as well as savingMark Walters2012-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define a keymap for attachment buttons to allow multiple actions. Define 3 possible actions: save attachment: exactly as currently, view attachment: uses mailcap entry, view attachment with user chosen program Keymap on a button is: s for save, v for view and o for view with other program. Default (i.e. enter or mouse button) is save but this is configurable in notmuch customize. One implementation detail: the view attachment function forces all attachments to be "displayed" using mailcap even if emacs could display them itself. Thus, for example, text/html appears in a browser and text/plain asks whether to save (on a standard debian setup)
* | emacs: add invisible dot instead of space at the end of notmuch-hello search boxDmitry Kurochkin2012-01-21
| | | | | | | | | | | | | | | | | | | | This makes `show-trailing-whitespace' happy, i.e. it does not mark the whole search box line as trailing spaces. Since the dot is invisible, this change makes no visible difference for `notmuch-hello'. Edited-by: Pieter Praet <pieter@praet.org> to fix the tests.
* | emacs: invert relation between 'notmuch-send and 'message customization groupsPieter Praet2012-01-21
| | | | | | | | | | | | | | 'message contains options relevant to 'notmuch-send, not the other way around. Thanks to Austin for suggesting `custom-add-to-group'. id:"20120118184408.GD16740@mit.edu"
* | emacs: Improved printing support.David Edmondson2012-01-21
| | | | | | | | | | | | | | | | | | | | Add various functions to print notmuch messages and tie them together with a simple frontend. Add a binding ('#') in `notmuch-show-mode' to print the current message. one trailing space removed by db.
* | emacs: Truncate lines and do not enable visual-line-mode in notmuch-show ↵David Edmondson2012-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | buffers. Enable the truncation of lines in `notmuch-show-mode' to avoid visual noise caused by the wrapping of the header lines. Don't enable `visual-line-mode' because it disables line truncation. The benefits of `visual-line-mode' were that it wrapped long lines in received messages. With `notmuch-wash-wrap-long-lines' now default behaviour, this is no longer required.
* | emacs: globally replace non-branching "(if (not ..." with "(unless ..."Pieter Praet2012-01-21
| | | | | | | | Less code, same results, without sacrificing readability.
* | emacs: logically group def{custom,face}sPieter Praet2012-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To allow for expansion whilst keeping everything tidy and organized, move all defcustom/defface variables to the following subgroups, defined in notmuch-lib.el: - Hello - Search - Show - Send - Crypto - Hooks - External Commands - Appearance As an added benefit, defcustom keyword args are now consistently ordered as they appear @ defcustom's docstring (OCD much?). Proper defgroup docstrings and various other improvements by courtesy of Austin Clements.