1
0
mirror of https://github.com/djcb/mu.git synced 2024-06-28 07:41:04 +02:00
Commit Graph

855 Commits

Author SHA1 Message Date
djcb
ace2f2ad2c mu4e: clean up creating html files
Clean up the creation of html files a bit, and automatically clean them
up after a short while, so we don't clutter /tmp.

Refactor the html-generating actions, so we don't repeat ourselves too
much.
2016-02-20 11:21:24 +02:00
djcb
392880233f mu4e: rename to mu4e-headers-search-hook
The old name mu4e-headers-search-pre-hook was unnecessarily long.
2016-02-19 07:39:52 +02:00
Ævar Arnfjörð Bjarmason
14af0d28c8 mu4e-headers: Add hook executed when we're opening bookmarks (again)
This was merged in as part of pull request #718 but changed to a more
general facility in 7716e00.

It's fantastic that we have the more general hook facility for any
search, but the primary use-case I had for the bookmark hook can't be
satisfied by the more general mu4e-headers-search-pre-hook.

The reason I added this hook was to emulate the folders I used in
Icedove as mu4e bookmarks. E.g. some folders are threaded, others are
not. By default mu4e only allows you to set this globally via options
like mu4e-headers-show-threads.

So I have a mu4e-headers-search-bookmark-hook which is basically a long
line of cond statements like:

    ((string-equal expr "NOT flag:trashed AND date:365d..now AND (flag:flagged)")
        (setq mu4e-headers-show-threads nil)
        (setq mu4e-headers-include-related nil)
        (setq mu4e-headers-skip-duplicates t)
        (setq mu4e-headers-results-limit 500))

For this to work properly it's critical that the hook doesn't execute on
any search, but *only* those where we enter it via the bookmark.

As an example, I have a "b+" search which finds messages I've flagged,
most of my searches have related & threading turned on, but for that
search I only want to show the specific messages I've flagged, so the
hook turns both of those settings off before executing the search.

But I might still want to change my mind and look at the related
messages as threads by pressing P and then W. This works with the
mu4e-headers-search-bookmark-hook because it only executes when we get
the search via a bookmark.

But it doesn't work with the mu4e-headers-search-pre-hook because when I
toggle the setting my settings hook (which matches the search executed
by the bookmark) will just turn it back off again.

Perhaps there's some clever way to know if we're getting to the
mu4e-headers-search-pre-hook via the bookmark that I've missed. But if
there isn't I need a hook that works like this.
2016-02-18 21:37:21 +01:00
djcb
7716e005bf mu4e: add mu4e-headers-search-pre-hook
Just before executing a search, a hook-function
`mu4e-headers-search-pre-hook` is invoked, which receives the search
expression as its parameter.
2016-02-18 20:59:02 +02:00
djcb
eca427d3a2 Merge commit '4f83ab0f9430f0af1e6d3adbfc9a9591dddb8867' into avar/avar/mu4e-headers-search-bookmark-hook 2016-02-18 20:24:29 +02:00
djcb
961dba6d3e mu4e: by default, don't ignore any address
If set to nil, mu4e-compose-complete-ignore-address-regexp shouldn't
match anything.
2016-02-18 19:28:21 +02:00
djcb
91b622dc16 mu4e: fix logic in mu4e~process-contact 2016-02-17 22:49:03 +02:00
djcb
81c7786402 mu4e: make mu4e~read-char-choice case-insensitive
Make mu4e~read-char-choice case insensitive if there is no exact
match. Small convenience.
2016-02-17 20:01:18 +02:00
djcb
76dd849d06 mu4e: allow mu4e-compose-complete-ignore-address-regexp nil
Though it shouldn't, some users have
mu4e-compose-complete-ignore-address-regexp at nil, which gives errors
with the new contacts code. Be a bit more tolerant.
2016-02-17 19:50:13 +02:00
djcb
bdaa9c1aec mu4e: mention the action for capturing/attaching messages
Update the FAQ
2016-02-17 05:40:31 +02:00
djcb
d9961a0f09 mu4e: document the new resending functionality
Update the manual.
2016-02-16 08:29:06 +02:00
djcb
faf453d538 mu4e: resend: add to view/headers menu
Add `mu4e-compose-resend` to the menus in the headers and view
modes. Don't add a shortcut, as it's a fairly rarely needed feature, and
might be confusing if invoked accidentally.
2016-02-16 08:29:06 +02:00
djcb
b72db626f3 mu4e: implement resending
Implement the special compose type 'resend', for resending existing
messages, possibly with changes.
2016-02-16 08:29:06 +02:00
Yuri D'Elia
6337151918 mu4e: also quote the context label in the modeline 2016-02-16 08:28:59 +02:00
djcb
08d955e432 Merge branch 'master' of github.com:djcb/mu 2016-02-15 20:15:32 +02:00
Yuri D'Elia
ac0b1b755a mu4e: escape % in queries when updating the mode-string 2016-02-14 20:00:43 +01:00
djcb
5bdfdf709a mu4e: use To rather than T as shortname 2016-02-14 17:06:03 +02:00
Dirk-Jan C. Binnema
b380e7d9c6 Merge pull request #792 from sje30/patch-3
mu4e: Update mu4e-about.org
2016-02-14 11:58:36 +02:00
djcb
ef0c8b71ff mu4e: extend section on bug-reporting in doc 2016-02-13 18:29:40 +02:00
Stephen Eglen
878cf27b42 Update mu4e-about.org
Add  "showall" to orgmode so that all of the buffer contents are visible.
This matches the NEWS.org file.
2016-02-09 13:09:07 +00:00
djcb
930df157e2 mu4e: mention hyperlink shortcuts / html rendering 2016-02-08 21:08:54 +02:00
djcb
41455fe524 mu4e: default to mu4e-shr2text when available
Make shr the default renderer for rich-text emails, if shr is
available. Update the documentation.
2016-02-07 14:33:24 +02:00
djcb
0019a00569 mu4e: update docs for mu4e-get-mail-command
There seems to be some confusion making people setting it to `t` rather
than the literal string "true". Make it even clearer in the doc.
2016-02-07 14:10:43 +02:00
djcb
14cbca7595 mu4e: remove 'z' shortcut for quitting headers view
Make consistent - 'q' is for quitting, not 'z', both in message, headers
view. Single-letter keybindings are precious, so let's avoid duplicates.
2016-02-06 12:48:14 +02:00
djcb
7b84236bdb mu4e: be tolerant of errors in `mu4e~headers-remove-handler'
Works around issue #789
2016-02-05 08:03:29 +02:00
Lukas Fürmetz
46ca26457a mu4e: restore window-layout after `message-kill-buffer'
Replaces `message-kill-buffer' with `mu4e-message-kill-buffer'. This new
function is a wrapper around the original. It restores the window-layout
of mu4e after cancelling a message in mu4e-compose-mode.
2016-02-02 21:08:38 +02:00
Magnus Therning
fe1104a94f mu4e: Add mu4e-mark-execute-pre-hook
Add a hook that runs just before executing a mark.

Signed-off-by: Magnus Therning <magnus@therning.org>
2016-02-02 20:28:49 +02:00
Magnus Therning
974d728bd4 mu4e: re-indent function prior to mark-hook change
Signed-off-by: Magnus Therning <magnus@therning.org>
2016-02-02 20:21:38 +02:00
Thomas Moulia
8f5df6cca0 mu4e: fix compose cancel orphaning a buffer
Create buffer contents _before_ creating the file.
2016-02-02 20:21:37 +02:00
djcb
29a4ae1c83 mu4e: explicitly specify utf8 for html-view actions
Explicitly add the (html 5) <meta charset ...> for UTF-8; not all
browsers default to UTF-8 and could show the class "Â" characters when
interpreting UTF-8 as ISO-8859-1.
2016-02-02 20:21:37 +02:00
Maximilian Matthe
0087440a19 mu4e: fix mu4e-completing-read-function in doc
Small doc fix.
2016-01-28 21:03:34 +02:00
djcb
7ea5f4c8e2 mu4e: add mu4e-action-view-with-xwidget
Action for using xwidget/webkit to display emails in a webkit widget
inside mu4e. This currently requires the git-version of emacs (emacs-25
branch).
2016-01-24 12:32:09 +02:00
djcb
0bbe021736 mu4e: add note about searching CJK chars to doc
As discussed in issue #544, it's possible to search for CJK text, as
long as you see the environment variable XAPIAN_CJK_NGRAM to non-empty
with Xapian >= 1.2.8.
2016-01-17 10:33:18 +02:00
djcb
d9ca330f2b mu4e: tiny doc improvement 2016-01-15 21:02:35 +02:00
djcb
ea1c6645ef mu4e: use , to separate Keyword: values
Conform with https://tools.ietf.org/html/rfc2822#section-3.6.5

Spotted by andersjohansson
2016-01-14 22:26:10 +02:00
djcb
ed935112e6 mu4e: fix indentation in doc
The previous doc changes somehow broke indentation in figures,
lisp. This fixes it again. Fixes #762
2016-01-12 21:38:07 +02:00
Dirk-Jan C. Binnema
15fc236429 Merge pull request #765 from declanqian/emacs-lib-conv
mu4e: comform emacs libs convention
2016-01-12 20:55:16 +02:00
Declan Qian
33d6435003 comform emacs libs convention
http://www.gnu.org/software/emacs/manual/html_node/elisp/Library-Headers.html
2016-01-13 01:49:01 +08:00
djcb
d9fcfc6ddc mu4e: cosmetics 2016-01-10 13:08:18 +02:00
djcb
82e7ba051f mu4e: add mu4e-view-fetch-url for downloading URLs
Add mu4e-view-fetch-url for fetching (downloading) URIs linked to in
e-mails. Add the 'f' keybinding for this, and document it.

Based on code by inigoserna.
2016-01-10 13:06:10 +02:00
djcb
aad5708d49 mu4e: update the manual
Fill in all the menu descriptions. Rename a few sections.
2016-01-10 11:56:58 +02:00
djcb
dd4be5f33e Merge branch 'master' of github.com:djcb/mu 2016-01-09 21:28:27 +02:00
djcb
967b3cb727 mu4e: update copyright years 2016-01-09 21:28:03 +02:00
djcb
144e2a8f1b mu4e: Contact completion - better sorting / display
Improve the contact-sorting algorithm, and make it better cooperate with
completion-at-point functions.

Also deal better with broken rewritten contacts, and document how
rewriting should done (docstrings and reference doc).
2016-01-09 21:27:52 +02:00
Dirk-Jan C. Binnema
cbbb006189 Merge pull request #755 from zakkak/patch-1
mu4e: Add reference to unicode-fonts in Tips and Tricks
2016-01-06 00:09:23 +02:00
djcb
25da1fdc7b mu4e: remove misleading mail-reply-to from doc
You can't change mail-reply-to by setting the var.
2016-01-05 20:33:39 +02:00
Foivos
9d66478922 Add reference to unicode-fonts in Tips and Tricks 2016-01-05 20:13:17 +02:00
djcb
785d888b42 mu4e: don't change context when already running
This is for the case where mu4e-compose trigger mu4e~start, as found by
thierryvolpiatto.
2016-01-03 15:53:58 +02:00
djcb
5e13d31450 mu4e: tweak the contact sorting
Fall back to freq / tstamp when both contacts are personal.
2016-01-03 15:53:07 +02:00
djcb
b373f8e5f0 mu4e: context policy tweaking
As discussed in issue #751, mu4e should tried to accommodate some
different ways of choosing the context.

We add a new policy `ask-if-none', that will only query the user if
there is no context yet; this is the new default for
mu4e-context-policy, i.e. what happens when entering the main view.

The default policy for mu4e-compose-context-policy is now `ask',
i.e. ask if none of the contexts match.

The idea is for the defaults to ask when we don't know a context, and we
can't determine one using the match functions; this is probably the
least confusing. When user gets annoyed by too many question, they can
tweak the behavior to their liking. I.e. 'ask questions first, shoot
later'

Document all of this.
2016-01-03 13:29:19 +02:00