Commit Graph

217 Commits

Author SHA1 Message Date
Yuri D'Elia 0a5224c4c8 Allow to ignore addresses when doing wide replies
Introduce a new variable, mu4e-compose-reply-ignore-address, which matches
addresses to be skipped when doing wide replies.

This is identical in behavior to messages-dont-reply-to-names from message.el
(which we default on).
2017-02-20 00:37:44 +01:00
Krzysztof Jurewicz f060cb8196 mu4e: Add possibility to forward messages as attachments
This commit adds a global variable
mu4e-compose-forward-as-attachment. To enable choosing forwarding
method on a per-message basis would probably require either:

• changing the mu server backend so that it distinguishes between
  inline forwarding and forwarding as attachment;
• changing the mu server backend so that it doesn’t return attachments
  at all and making both inline and as attachment forwarding via
  MIME (and also making mu4e actually display MIME-enclosed inline
  emails).
2017-01-13 16:30:25 +01:00
djcb 34cd624023 mu4e: fix some defcustoms
There weren't quite right.
2016-11-24 00:33:06 +02:00
djcb 217e06641d mu4e: minor cleanup in docstrings 2016-11-23 23:26:12 +02:00
djcb 01fe899c37 mu4e: better error for non-supported header fields
Some fields (eg. :attachments and :user-agent) require a full message
and are not supported in headers-mode. Document this and give a clearer
error message when they are added to `mu4e-headers-fields'.

Fixes issue #933.
2016-11-05 12:42:28 +02:00
Allen 779b50f0f0 Fix parentheses grouping typo 2016-10-25 23:37:34 -07:00
Christophe Troestler dc3bffa186 Compare email addresses case insensitively 2016-08-28 00:30:29 +02:00
Christophe Troestler cec66211f5 Add a face for displaying the context in the mode-line 2016-08-12 00:11:12 +02: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
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 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 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
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 4814548318 Make `mu4e-hide-index-messages' customizable 2016-06-03 09:50:52 +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 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 5bdfdf709a mu4e: use To rather than T as shortname 2016-02-14 17:06:03 +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 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 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
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
djcb a085c881ef mu4e: don't change context at startup when there is one
Since people often go start/stop mu4e, we shouldn't try to pick a
default context if one is already set.
2015-12-30 17:39:59 +02:00
djcb f645a12075 mu4e: improve sorting of contacts for completion
set up the extra machinery for making sure emacs does not try to re-sort
our already-sorted contacts.... Also try to improve the sorting strategy
itself.
2015-12-29 18:53:57 +02:00
djcb 6fa9556aa8 mu4e: improve mu4e-contact-rewrite-function
Allow mu4e-contact-rewrite-function to return nil to remove a
contact. Improve documentation.
2015-12-26 13:26:26 +02:00
djcb ed1c7edba3 mu4e: some more context tweaking
Fix some typo, change default for startup to pick-first.
2015-12-24 16:03:55 +02:00
djcb 113c024632 mu4e: implement context-policies
Allow setting a policy about what context to choose when starting mu4e
and composing a message. Basically:

When you have defined contexts and you start mu4e it decides which
context to use based on the variable `mu4e-context-policy';
similarly, when you compose a new message, the context is determined
using `mu4e-compose-context-policy'.

These policies can be one of the following:
- a symbol always-ask: unconditionally ask the user what context to pick

The other choices only apply if none of the context matches (i.e., if
none of the contexts' match-functions returns t:

- symbol ask: ask the user
- a symbol pick-first: pick the first context
- nil: don't change the context
2015-12-23 22:01:51 +02:00
djcb ddcd2f39b5 mu4e: more support for fancy-chars
Re-simplify `mu4e-use-fancy-chars` to a boolean again; add some extra
mark-chars (big character, so they are easily visible). Document it.
2015-12-15 09:07:17 +02:00
djcb 1a33a710db Add `mu4e-view-body-face`
This allows setting a custom face for the message body, e.g., if you
prefer a proportional font for the body:

    (set-face-attribute 'mu4e-view-body-face nil :font "Liberation Serif-10")
2015-10-13 08:03:56 +03:00
djcb f6b596d292 Documentation: e-mail address are case-sensitive 2015-10-07 11:45:06 +03:00
Daniele Pizzolli db65c824d0 Fix typo from higl.* to highl.* 2015-09-22 10:10:47 +02:00
Florian Lindner 9780f076f1 Make usage of fancy chars configurable. 2015-09-10 12:32:49 +02:00
djcb 4209eeef8c mu4e: don't use obsolete faces
Fixes #645.

Keep the ones that are still in use though.
2015-08-12 20:52:55 +03:00
djcb cc4bb1abcd mu4e: fix typo 2015-06-14 11:40:43 +03:00
djcb 041a79fdb5 mu4e: add NEWS(.org) as a main menu item 2015-06-09 21:08:02 +03:00
djcb 910e41e2fe mu4e: experimental :thread-subject field (one subject per thread)
with :thread-subject field, we attempt to only show one subject per
thread, somewhat like mutt does it.

the current implementation is straightforward, but does not take into
account whether the thread-subject is currently visible on the screen,
which is a bit tricky to implement
2015-03-22 11:49:57 +02:00
djcb 33804f63d8 mu4e: add example for mu4e-contact-rewrite-function 2015-03-15 13:45:28 +02:00
Stephen Eglen 3239a69fc5 Update mu4e-vars.el
typo
2015-02-25 09:50:55 +00:00
Alex Bennée 6bde425aa4 mu4e-vars: fix reference to obsolete mu4e-my-email-addresses
This variable has been replaced with mu4e-user-mail-address-list.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2015-01-15 09:23:30 +00:00
djcb 664431bf8c mu4e: improve mail-retrieval error handling
Add two new customization variables:
  mu4e-index-update-error-continue
  mu4e-index-update-error-warning

With these, we can configure what happens when the mail-retrieval
program finishes with a non-zero exit code.

Make the default to warn but continue; it seems quite some users got
bitten by the old behavior of not updating after an error (which may
only be a pseudo-error). offlineimap/mbsync do not document their exit
codes very well, unlike fetchmail.

Also update manual for this.
2014-11-30 11:33:31 +02:00
Foivos S. Zakkak 2d843ca887 Add Decryption field
Add a decryption field of the form

Decryption: 2 part(s) decrypted 1 part(s) failed

Meaning that 2 encrypted mime parts where successfully decrypted and 1
part failed.  Note that the number 2 refers to the number of
successfully decrypted mime parts and not the number of successfully
decrypted encryptes multiparts, i.e., if an encrypted multipart
contains 4 parts and decryption is successful the field will be

Decryption: 4 part(s) decrypted

TODO: Add details button listing the names and indexes of the
decrypted (or not) mime-parts
2014-10-19 03:27:58 +03:00
Oliver Dunkl 4964fc721d Update mu4e-vars.el 2014-10-12 10:39:07 +02:00
Oliver Dunkl ce0006721a Add different face attribute for the mode-line
There is an additional face attribute for the mode-line.
2014-10-02 06:31:10 +02:00
djcb d042d8be89 Document that mu4e-maildir must not be a symlink ('fixes' #453)
mu doesn't support symlinks; document this. You can use hardlinks
instead of course.
2014-09-23 07:52:15 +03:00
djcb 8b775ab238 * mu4e: update the contact-rewriting code a bit:
- make the default nil rather than a dummy (identity) function, for
    speed
  - don't use 'canonical' but the 'rewrite' which is a bit more general
2014-04-06 17:51:12 +01:00
joost 86f0934f7b solves #383 2014-03-28 10:24:29 +01:00
Thierry Volpiatto 8394e6069f * mu4e/mu4e-view.el (mu4e-mark-region-code): New function to highlight region marked with `message-mark-inserted-region'.
* mu4e/mu4e-vars.el (mu4e-region-code): New face.
2014-03-24 09:17:25 +01:00
Thierry Volpiatto 3835c2e45e * mu4e/mu4e-utils.el (mu4e~fontify-cited): Use string-width.
* mu4e/mu4e-vars.el (mu4e-cited-regexp): Improve it.
2014-03-02 20:58:49 +01:00
Thierry Volpiatto 1e8f97b961 * mu4e/mu4e-utils.el (mu4e~fontify-cited): Simplify.
* mu4e/mu4e-vars.el (mu4e-cited-regexp): Simplify regex and use a group to match the >*.
2014-03-02 08:19:33 +01:00
sabof e2c8bff298 Moved citation regexps to a variable 2014-02-05 20:24:05 +00:00
djcb d28950cf48 * fix typo 2014-01-25 20:08:40 -08:00
djcb 9c8101d949 * mu4e: centralize some of the fontification code; cleanup signature support 2013-10-20 15:41:47 +03:00
djcb b53d2ec0c2 * mu4e: make the faces a bit more generic 2013-10-19 12:05:05 +03:00
djcb 92158cfdd4 * mu4e: add hooks mu4e-headers-found-hook and mu4e-update-pre-hook, document them. 2013-10-13 21:44:47 +03:00
djcb f7077285fa * mu4e: don't suggest helm-comp-read for completing-read 2013-10-09 08:16:52 +03:00
djcb 7ea092cbed * mu4e: fix docstring 2013-10-05 23:56:29 -07:00
djcb 4b0cb4d1df * mu4e: allow for custom header fields (see `mu4e-header-info-custom') 2013-10-05 10:09:26 -07:00
djcb a23f1a4f7c * mu4e: enable showing the message-id in the view (and even the headers) 2013-09-28 10:36:18 -07:00
djcb 11e8850e58 * update doc for mu4e-completing-read-function 2013-09-18 08:54:57 +03:00
Stuart Hickinbottom 6e8e9ec44a New flexible method of customising completing-read
Added the customisation option 'mu4e-completing-read-function' which can
be used to choose which method of input-with-completion will be used by
mu4e. This variable is set to the function which mu4e will use.

By default, mu4e will use ido (via 'ido-completing-read'), but any
compatible completing-read function can be used instead. Interesting
choices would include 'helm-comp-read' for Helm-based completion, and
'completing-read' for the built-in basic completion system.
2013-09-12 22:42:45 +01:00
djcb 6a098c7be3 * update some comments 2013-08-17 11:54:22 +03:00
djcb beffb8072b * mu4e: add variable mu4e-hide-index-messages 2013-08-11 14:37:19 +03:00
djcb c7c18505fc * mu4e: update documentation 2013-07-06 10:47:15 +03:00
djcb 72e6fb997a * mu4e: make the byte-compiler happy 2013-06-29 13:07:32 +03:00
djcb ebc718a674 * mu4e: update documentation on queries / bookmarks as bit 2013-06-16 11:54:08 +03:00
djcb 3c67aa6591 * mu4e: fix a few compiler warnings / typos 2013-06-03 21:09:20 +03:00
djcb 08748f2e28 * mu4e: add mu4e-change-filenames-when-moving customization 2013-05-28 04:34:49 -07:00
djcb 8af771fb76 * cosmetic 2013-05-15 00:42:40 +03:00
djcb 5b8cc54c69 * mu4e: correctly apply 'trashed' face (headers); make face selection a bit more explicit 2013-05-05 12:24:15 +03:00
djcb 8256a403c5 * mu4e: use mu4e-view-show-images 2013-01-26 10:57:14 +02:00
djcb 42879bb8ef * minor 2012-12-27 20:23:08 +02:00
djcb b1e1574883 * mu4e: move mu4e-search-results-limit => mu4e-headers-results-limit 2012-12-25 19:42:47 +02:00
djcb 4f37e979e1 * some small improvements for the mailing list support 2012-12-22 21:57:49 +02:00
djcb 10ad5ce2ca * mu4e: add support for display mailing list (short)names in headers/view mode 2012-12-18 23:29:17 +02:00
Jonas Bernoulli cd5f730222 mu4e-maildir-shortcuts: define custom type 2012-12-12 20:07:01 +01:00
Dirk-Jan C. Binnema 5335908f57 Merge pull request #90 from tarsius/cited4
* mu4e-cited-4-face: inherit font-lock-keyword-face
2012-11-26 14:45:32 -08:00
Jonas Bernoulli 9b0a21c70f mu4e: mu4e-split-view: add to custom group mu4e-headers 2012-11-14 12:27:40 +01:00
Jonas Bernoulli 5a12450745 mu4e: fix parent groups of custom groups mu4e and org-mu4e 2012-11-14 12:27:04 +01:00
djcb f957a9ca89 * mu4e: cleanup header sorting (and fix the sort-by-human-date case) 2012-11-11 19:27:55 +02:00
djcb 1c1f974807 Merge branch 'master' of github.com:djcb/mu 2012-11-11 17:21:35 +02:00
djcb 6a1a03b06c * mu4e: make `mu4e-bookmarks' (def)customizable -- thanks to Jonas Bernoulli 2012-11-11 17:11:38 +02:00
Dirk-Jan C. Binnema 66d3f90931 Merge pull request #88 from tarsius/faces
* mu4e: make mu4e-header-highlight-face inherit region
2012-11-11 07:04:53 -08:00
Jonas Bernoulli 952b9836a8 mu4e-cited-4-face: inherit font-lock-keyword-face
The previously inherited face font-lock-pseudo-keyword-face does not
exist in emacs-24.2 (anymore?).
2012-11-10 14:29:38 +01:00
Jonas Bernoulli 8a3d4c27de improve doc-strings
The first sentence should summarize the variable's or function's
purpose and it should fit on the first line.  Change existing
doc-string by:

* Move first sentence onto first line even if that makes it _a bit_
  long.
* Move additional notes out of first sentence and add them later,
  possibly as complete sentences.
* If I am uncertain whether doing the above would alter the meaning,
  _don't_ do it.
* If fitting the initial sentence on the first line would require a
  complete rewrite of the doc-string _don't_ do so unless it is very
  easy to do.
* Remove indentation from second and later lines if it is there to
  align them with the first in the source code, instead of in
  `describe-*' output.
* Make "pullet point" lists a bit more consistent.

Obviously this does not fix all problems but it's a start.
2012-11-10 14:01:17 +01:00
Jonas Bernoulli 93889b020e * mu4e-header-highlight-face: inherit region
This should make it more intuitive to see that actions are performed
on the region as well as the current line (which usually is not part
of the region).
2012-11-10 10:40:41 +01:00
Jonas Bernoulli 73916f1210 fix mu4e-header-fields custom type
Also fix some option doc-strings.
2012-11-09 16:42:25 +01:00
Jonas Bernoulli ec106e38bf fix defcustom types and improve their doc-strings 2012-11-09 13:45:19 +01:00
djcb 339d1ff036 * mu4e: refactor part of mu4e-compose into the new mu4e-draft.el 2012-10-31 20:33:46 +02:00
djcb ae44852f80 * mu4e: better defcustom for -folder vars 2012-10-24 23:48:56 +03:00
djcb 82bfb55dd7 * mu4e: tags (X-Keywords etc.) support in headers/view (thanks to Abdó Roig) 2012-10-22 23:52:50 +03:00
djcb 6ccbd45b85 * mu4e: replace `mu4e-user-mail-address-regexp' and `mu4e-my-mail-addresses' with `mu4e-user-mail-address-list' 2012-10-19 16:01:55 +03:00
djcb 47286442e1 * mu4e: add 'human' dates, that is: show the time for today's message time,
the date otherwise, in the headers view
2012-10-19 12:02:13 +03:00
djcb d945e2e61c * mu4e: fix typos, cosmetics 2012-10-03 21:51:26 +03:00
djcb f9c9e790a6 * mu4e: allow setting a function for mu4e-attachment-dir 2012-10-03 12:53:16 +03:00
djcb 1a785abdca * minor 2012-10-01 21:18:42 +03:00
djcb 30f33e46ea * mu4e: documentation 2012-10-01 16:42:37 +03:00
djcb dde75fbb86 * mu4e: implement automatic refiling with 'r' 2012-09-27 12:53:16 +03:00
djcb 58b6be1d97 * mu4e: allow functions for special folders (WIP), implement for msg composition 2012-09-27 10:03:58 +03:00
djcb bfc2ba9c55 * mu4e: showing embedded messages: updated handler, view 2012-09-23 11:42:00 +03:00
djcb 5a9b867ca8 * mu4e: support the :size field in headers, message view 2012-09-15 18:24:03 +03:00
djcb 53cf08baf8 * mu4e/crypto: support mu4e-decryption-policy 2012-09-13 21:10:27 +03:00
Ryan C. Thompson 9c955763bc Add and fix up type declarations for custom variables 2012-09-08 01:17:43 -07:00
djcb f61784b4ff * mu4e-vars: add a bit more documentation to `mu4e-compose-complete-only-personal' 2012-09-01 20:06:24 +03:00
djcb 97196b9c54 * mu4e: s/mu4e-headers-use-fancy-chars/mu4e-use-fancy-chars/ and use it for
the arrows in header mode as well
2012-08-28 12:10:56 +03:00
djcb 7623680a60 * mu4e: set mu4e-get-mail-command to "true" (default), so it will still work
even if users don't have an actual get-mail command.
2012-08-27 19:02:06 +03:00
Thomas Wallrafen ef6bcc90e6 Added variable mu4e-confirm-quit. 2012-08-22 17:22:31 +02:00
djcb ba50104b8f * cosmetics 2012-08-16 20:48:01 +03:00
djcb 12226c19c0 * mu4e: make elint-clean 2012-08-14 10:20:27 +03:00
djcb 136d0f2875 * mu4e/crypto: beginnings of crypto (verification, decryption) support. WIP! 2012-08-01 17:07:11 +03:00
djcb 825529ad0f * mu4e-vars: base faces on some more standard things 2012-07-23 00:55:41 +03:00
djcb dde3f09c76 * crypto/mu4e: support signature verification in mu4e (WIP) 2012-07-19 11:42:38 +03:00
djcb 548ada3032 * crypto/mu4e: support signature check in mu4e (part 1) 2012-07-18 17:53:04 +03:00
djcb 9df78fe49f * mu4e: improve display of the flags-field in the message view 2012-07-16 15:56:26 +03:00
djcb 668327da84 * mu4e: make contacts in address field in the message view 'clickable': toggle
between long/short display and compose. Make short display the default
2012-07-16 12:19:19 +03:00
djcb 1e2ed5715a * mu4e: set sort order by clicking on header tabs 2012-07-11 11:36:05 +03:00
djcb 0e011783c0 * mu4e: add special face for replied/passed headers 2012-07-10 21:10:00 +03:00
djcb dc62bd6c75 * rename emacs/ => mu4e/ 2012-07-10 20:00:06 +03:00