1
0
mirror of https://github.com/djcb/mu.git synced 2024-06-26 07:29:17 +02:00
Commit Graph

984 Commits

Author SHA1 Message Date
djcb
49ea3bec58 mu4e: update html/URL handling
Make mu4e-view-toggle-html _not_ toggle the global value of of
mu4e-view-prefer-html, but only the current one.

Make the link map 'permanent', so it survives the buffer changes when
refreshing. This fixes issue #904.
2016-08-13 10:57:49 +03:00
djcb
75412ec3b1 mu4e: document mu4e-view-html-plaintext-ratio-heuristic
Add note about most-positive-fixnum. This fixes issue #903.
2016-08-13 09:42:33 +03:00
Christophe Troestler
cec66211f5 Add a face for displaying the context in the mode-line 2016-08-12 00:11:12 +02:00
Christophe Troestler
744f288431 Fix typo 2016-08-12 00:05:12 +02:00
djcb
8235a903c4 mu4e: update bbdb instructions 2016-08-09 09:27:53 +03:00
Piotr Trojanek
fc8e563e90 minor fix of unbalanced parens in doc 2016-08-02 19:15:32 +01:00
Aaron LI
9b54c2745e mu4e: use builtin function "shr-render-region" for simplicity 2016-08-02 22:19:51 +08:00
Remco van 't Veer
9e6bfb9075 Fix kill ring clobbering by get mail filter
The kill ring fills up with lines like:

  C: 0/1  B: 28/29  M: +0/0 *0/0 #0/0  S: +2/2 *1/1 #0/0

when using mbsync or another tool using carriage return for progress.
2016-08-02 09:00:46 +03:00
Dirk-Jan C. Binnema
80ecf80a12 Merge pull request #875 from stsquad/some-fixes
mu4e-actions: improve mbox handling for multiple marks
2016-08-02 08:08:34 +03:00
Ævar Arnfjörð Bjarmason
e2ce627197 Actually make the "write attachments" feature in d16957d work
This is a follow-up to my pull request #895 which fixes another bug in
pull request #831 (d16957d).

The code to write out the attachments would never work, for what it's
worth it's clear from the issue I fixed in #895 that the codepath had
never been executed as-is.

It would find the attachments and try to write them out to /tmp/, just
that, no /tmp/NAME, just the directory itself. That would yield an
error of trying to write to a directory.

Fix that, now we create a temporary name as a function of the
attachment and both save it and extract it.

This makes the mu4e-action-view-in-browser function finally work for
me. It'll now write out the attachments to /tmp, and rewrite the HTML
so that I'll see the attachments in my browser.
2016-08-01 21:11:05 +02:00
Ævar Arnfjörð Bjarmason
dc65f0c5ec Fix a regression in pull request #831
The mu4e-message-field function was called in a way that would never
work, fix that by calling it correctly.

There's the additional follow-up TODO here that the mu4e-message-field
function itself should probably die on this sort of invocation, but I
don't know enough about elisp idioms to know how that should look.

This fixes my issue #894.
2016-07-31 23:28:35 +02:00
djcb
49bc9605d8 mu4e: add mu4e-headers-hide-predicate
Add `mu4e-headers-hide-predicate', a function that allows for hiding
messages from the display. This can be used e.g. to hide trashed
messages.
2016-07-31 13:07:27 +03:00
djcb
b5345851ee mu4e: documentation 2016-07-31 11:23:38 +03:00
djcb
f7be5ef2ff mu4e: make bookmarks a defstruct
Make the structures use for mu4e-bookmarks a defstruct, and update its
usage throughout the codebase. This makes it a bit easier to read and
extend.

Ensure that the old-style bookmarks are automatically converted.
2016-07-31 11:20:59 +03:00
Jun Hao
2d5475e7ed mu4e: Allow header fields with more than one lines to fold to one
Fix #803
2016-07-30 01:10:26 +08:00
djcb
0d9cac49d3 mu4e: mu4e-draft: fix "typo" in face name 2016-07-27 13:08:35 +03:00
djcb
538b7e5292 mu4e: allow for show :user-agent in message-view
Define a field :user-agent and make it showable in the view.
2016-07-24 14:30:37 +03:00
djcb
a4df4927a6 mu4e: document mu4e-index-(cleanup|lazy-check)
Document the two new configuration variables, mu-index-cleanup and
mu-index-lazy-check.
2016-07-24 12:49:49 +03:00
djcb
eb7888cdb1 mu4e: support mu indexing performance options
Add two variables mu4e-index-cleanup and mu4e-index-lazy-check, which
correspond to mu index option --lazy-check and --nocleanup.

Extend the mu server protocol a bit to handle this.

The defaults keep things behaving as they done before.
2016-07-23 21:33:10 +03:00
djcb
c27471f4fa mu4e: compose: auto-crypt/sign crypto replies
When replying to an encrypted message, sign/encrypt by default; see
  mu4e-compose-crypto-reply-policy.

(Issue #865)
2016-07-12 00:25:05 +03:00
djcb
a24058040f mu4e: fix typo in face description 2016-07-12 00:15:29 +03:00
djcb
1945ab3bce mu4e: handle foo> citation style
Handle the citation style where the cited part is prefixed with
eg. "foo> " instead of the normal ">".

Also improve the default color scheme a bit.
2016-07-10 21:45:52 +03:00
Dirk-Jan C. Binnema
fc3b9c19da Merge pull request #877 from remvee/feature/handle-mbsync-output
mu4e: Handle mbsync output in mu4e-update buffer
2016-07-10 00:04:25 +03:00
djcb
1e963c1779 mu4e: update font-locking for mu4e-compose-mode
mu4e was making a vain attempt to fontify the compose buffer; this
doesn't work because message (from which mu4e-compose-mode derives) uses
font-locking for that.

So, instead, remap the message-mode faces to the ones used for mu4e.
2016-07-09 23:42:58 +03:00
Remco van 't Veer
b203226a06 Handle mbsync output in mu4e-update buffer
The mbsync command uses carriage return characters to go to the
beginning of the line.
2016-07-08 14:12:30 +02:00
djcb
b31ba3dd81 mu4e: seems the keymaps might not be defined (workaround)
Users were seeing:
,----
| Debugger entered--Lisp error: (wrong-type-argument keymapp nil)
|   signal(wrong-type-argument (keymapp nil))
|   define-key-after(nil [mu4e-hard-newlines] (menu-item "Format=flowed"
| mu4e-toggle-use-hard-newlines :button (:toggle . use-hard-newlines) :help
| "Toggle format=flowed" :visible (eq major-mode (quote mu4e-compose-mode))
| :enable mu4e-compose-format-flowed) sep)
|   mu4e-compose-mode()
|   byte-code("..." [original-msg mu4e-compose-parent-message
| mu4e-compose-context-policy winconf includes att make-local-variable put
| permanent-local t mu4e~context-autoswitch run-hooks mu4e-compose-pre-hook
| current-window-configuration nil (mu4e-draft-open compose-type
| original-msg) ((quit (byte-code "..." [winconf set-window-configuration
| mu4e-message "Operation aborted" throw --cl-block-mu4e~compose-handler--
| nil] 3))) mu4e~draft-insert-mail-header-separator mml-attach-file plist-get
| :file-name :mime-type mu4e~compose-set-friendly-buffer-name
| set-buffer-modified-p (new forward) message-goto-to message-goto-body
| mu4e~compose-type mu4e~compose-hide-headers mu4e-compose-mode delete-frame
| --dolist-tail-- compose-type mu4e-compose-in-new-frame message-exit-actions
| message-postpone-actions] 6)
|   mu4e~compose-handler(new)
|   mu4e-compose(new)
|   mu4e-compose-new()
`----
2016-07-03 23:29:05 +03:00
Alex Bennée
fdb476e225 mu4e-actions: improve mbox handling for multiple marks
This avoids prompting the user over and over if the directory hasn't
changed. I've also ensured the paths are escaped with
shell-quote-argument.
2016-07-03 08:38:26 +01:00
Dirk-Jan C. Binnema
6a42000997 Merge pull request #871 from arthurl/arthur/PR/refences-header-bug
mu4e: [FIX] references header dropped bug
2016-07-03 10:17:04 +03:00
djcb
3895052bfd Merge branch 'master' of github.com:djcb/mu 2016-07-03 10:02:23 +03:00
djcb
ddf4adc30f mu4e: try a bit harder to find the draft folder
If we can't guess the draft folder when re-editing a message, fallback
to the default.
2016-07-03 10:00:27 +03:00
Arthur Lee
8a62bc172d mu4e: [FIX] references header dropped bug 2016-06-22 01:43:59 +08:00
Dirk-Jan C. Binnema
52b7aae439 Merge pull request #852 from jschwab/improve-action-show-thread
mu4e: Improve behavior of mu4e-action-show-thread
2016-06-11 09:54:08 +03:00
Thierry Volpiatto
fa2427e6f9 Fix window restoration when C-g'ing on reply.
* mu4e/mu4e-compose.el (mu4e~compose-handler):
Save and restore window config.
2016-06-09 07:22:56 +02:00
djcb
d3b20704dc mu4e: exclude compose buffer from desktop-saving
You can't really use drafts restored from desktop-save-mode; so exclude
them.

Fixes #860.
2016-06-08 22:29:28 +03:00
djcb
ed16684f45 mu4e: cosmetics 2016-06-08 19:25:52 +03:00
djcb
e977309de5 mu4e: don't try to open non-existent messages
When processing header updates, don't try to open a message that doesn't
exist. Fixes issue #825.
2016-06-08 19:22:41 +03:00
Dirk-Jan C. Binnema
04d973a9df Merge pull request #861 from remvee/feature/hide-index-messages-customizable
mu4e: Make `mu4e-hide-index-messages' customizable
2016-06-05 18:55:49 +03:00
djcb
5656d3ee18 Merge branch 'master' of github.com:djcb/mu 2016-06-05 18:53:31 +03:00
djcb
ac1bfae196 mu4e: limit # of references to 21
Following the example of `message-shorten-references', only allow up to
21 references, since some mail servers limit them.

Fixes #859.
2016-06-05 18:49:04 +03:00
Remco van 't Veer
4814548318 Make `mu4e-hide-index-messages' customizable 2016-06-03 09:50:52 +02:00
Jun Hao
fe52c0e932 mu4e: Make dvipng optional when convert from org to html 2016-05-31 20:28:57 +08:00
Josiah Schwab
fb45d70d54 Improve behavior of mu4e-action-show-thread
This patch improves the behavior of mu4e-action-show-thread.  This
action now leaves the point on the message where the action was invoked,
which helps prevent losing ones' place in a long thread.  When invoked
in view mode, it continues to display the message that was being viewed,
instead of returning to a header-only view.
2016-05-19 10:05:29 -07:00
djcb
bd0fd4b8d8 mu4e: ensure filename is valid for removing it later
lexical-let the filename to be removed later, so it's still valid.
2016-05-16 09:22:11 +03:00
Christophe Troestler
e1c946ebd5 Improve the description of C-c C-k in compose mode
Fixes https://github.com/djcb/mu/issues/843
2016-05-15 12:23:23 +02:00
Christophe Troestler
834b0671c8 Add a menu entry to attach captured messages
Without this menu entry, one has to remember the command name which is
not convenient.  This entry also helps to discover the "capture" feature.
2016-05-10 21:55:54 +02:00
djcb
3a7429456c mu4e: parenthesize narrowing term
When narrowing search results, parenthesize the narrowing term, so terms
with AND/OR etc. don't lead to surprising results.

Fixes #846.
2016-05-09 23:14:36 +03:00
Dirk-Jan C. Binnema
070c623286 Merge pull request #844 from Chris00/flowed
mu4e: Compose mails with format=flowed by default
2016-05-09 23:08:44 +03:00
Christophe Troestler
d063889e4c Set mu4e-compose-format-flowed to nil by default
Requested by Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> not to disturb
existing users.
2016-05-07 18:12:10 +02:00
Christophe Troestler
af523cd05a Add the menu entry in the function defining the mode
This ensures that `(lookup-key message-mode-map [menu-bar text])'
returns a valid keymap.
2016-05-07 03:28:09 +02:00
Jun Hao
d16957dc97 mu4e: handle attached image when write msg body to html 2016-05-07 09:07:11 +08:00
Christophe Troestler
55a95db3f0 Update the manual about composing format=flowed messages 2016-05-07 02:58:17 +02:00
Christophe Troestler
d2ae534ad8 With use-hard-newlines, M-q reformat the paragraph as a single line 2016-05-07 02:58:17 +02:00
Christophe Troestler
b6a1e1cef8 Add a menu entry to toggle format=flowed 2016-05-07 02:58:17 +02:00
Christophe Troestler
0d939f6852 By default, compose messages as format=flowed
Fixes https://github.com/djcb/mu/issues/836
2016-05-07 02:58:17 +02:00
Dirk-Jan C. Binnema
455a0731c0 Merge pull request #820 from tmalsburg/master
Mu4e: Added missing menu items.
2016-04-26 20:13:07 +03:00
Dirk-Jan C. Binnema
55fc2c55f9 Merge pull request #832 from jsrjenkins/patch-1
Fix minor typo on line 1486
2016-04-26 20:12:11 +03:00
Dirk-Jan C. Binnema
9556122ec9 Merge pull request #834 from Chris00/master
mu4e: Add spam-filtering functions suitable for the view mode
2016-04-26 20:10:33 +03:00
djcb
cef449f1d4 mu4e: doc: update to mu4e-compose-cite-function
We were still using the old name. Fixes #835.
2016-04-26 20:03:52 +03:00
Christophe Troestler
e398f336a0 Add spam-filtering functions suitable for the view mode 2016-04-19 20:27:38 +02:00
Christophe Troestler
75c64e36ab Remove the mention of unsure spam functions that do not exist 2016-04-19 20:25:35 +02:00
jsrjenkins
9c747f524c Fix minor typo on line 1486
Fixing the small typo which caused cosmetic errors in the Editor View Section.
2016-04-19 08:48:15 +01:00
djcb
a5dc1f002a Merge branch 'master' of github.com:djcb/mu 2016-03-24 20:29:48 +02:00
djcb
975d270dd3 mu4e: don't strip references for fwd messages
Don't remove the references header for forwarded message because there's
no "in-reply-to"
2016-03-24 20:27:47 +02:00
djcb
1edeee4764 mu4e: fix typo -> mu4e~headers-msgid-target 2016-03-24 20:26:39 +02:00
Titus von der Malsburg
88df34cd96 Mu4e: Added missing menu items. 2016-03-22 23:33:07 -07:00
djcb
8ca6cc2883 mu4e: cosmetic fix in doc
Align table.
2016-03-23 07:11:48 +02:00
djcb
e1b99e2f12 mu4e: some documentation updates
In particular, update the context example
2016-03-16 01:13:03 +02:00
djcb
15f857afcc mu4e: try to jump to same message after re-search
After a re-search, perhaps after toggling threading etc., try to move
point to the same message it was before
2016-03-16 01:11:11 +02:00
djcb
c041ca39ed mu4e: mention privacy aspects of browser
Mention the privacy aspects of opening a message in a browser, and what
to do about it.
2016-03-15 06:40:21 +02:00
djcb
6dd3d60402 mu4e: minor docstring fix for `mu4e-index-update-in-background' 2016-03-14 23:00:14 +02:00
djcb
6aaf5588c3 mu4e: fix typo in `mu4e-header-info-custom' docstring 2016-03-14 22:48:11 +02:00
Jun Hao
13c4b48920 mu4e: quote user-full-name according to rfc822 when construct from field 2016-03-14 23:08:41 +08:00
djcb
1505da640d mu4e: add check for add-face-text-property
add-face-text-property was only introduced in emacs 24.4, so check
before use in mu4e-headers as do in mu4e-view.

Fixes issue #811.
2016-03-09 08:02:57 +02:00
Jun Hao
0bd19fc40c mu4e: add mu4e-index-update-in-background
Give users choice to decide if they want to run automatic
mu4e-index-update in background or not
2016-03-06 22:03:37 +08:00
djcb
74691afde8 mu4e: update org-mode support
mu4e-view-message-with-message-id is the new name for
mu4e-view-message-with-msgid.
2016-02-23 23:25:18 +02:00
djcb
7ac4921902 mu4e: improve mu4e-view-message-with-message-id
Now, when going to a message with certain message-id, do open a headers
buffer as well. This way, message opened this behave just like an other
message, and can be delete, flagged etc.

As a bonus, you get the whole message thread for a given
message (depending on settings)

mu4e-view-message-with-message-id now does a search and
mu4e-headers-search allow for some extra actions to open a specific
message in a hook function.
2016-02-23 23:19:54 +02:00
djcb
2b0d75b295 mu4e: don't use message-kill-actions for closing frames
Seems it is handled by the other actions already, and kills one-too-many
frames.
2016-02-21 16:33:55 +02:00
djcb
24194b4d12 Remove some debug 2016-02-20 12:35:43 +02:00
djcb
a0f0e95344 mu4e: better handling of closing compose frames
Use message-mode actions to close the compose
frame (`mu4e-compose-in-new-frame') whenever we're finished editing a
message.
2016-02-20 12:25:21 +02:00
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