#+STARTUP:showall
* IDEAS

Ideas for future enhancements. We collect those here so they don't clutter up
the Github issue list, i.e. without any clear plan for adding in the near
future.

** mu

- Support indexing PDF (and other) attachments. This can be done extending
  process_message_part in mu-message.cc; instead of using something
  PDF-specific, we could pipe a PDF through some tool to extract text; and we'd
  need some way for users to specify a MIME-type => tool mapping  (in Config).
  https://github.com/djcb/mu/issues/2117

- Include "message summary" in message information, for display in the headers
  buffer: https://github.com/djcb/mu/issues/1821 It's not so easy to get a
  useful one line description... perhaps the first line after the "Dear x,"?
  Moreover, this requires new functionality on the headers-view side as well.

- Try to guess the encodings; sometimes people send messages that e.g., claim
  they are ISO-8859-1 but actually use windows-1252, resulting in some
  characters being shown incorrectly. Perhaps best solved by GMime, but maybe mu
  can do something. https://github.com/djcb/mu/issues/2700

- More sorting options: in mu4e, display the messages from old-to-new (still get
  the newest though) https://github.com/djcb/mu/issues/2759. Or, from
  new-to-old, reversed in thread: https://github.com/djcb/mu/issues/2807

** mu4e

- Allow for *muting* messages https://github.com/djcb/mu/issues/636 Useful;
  probably need to do this by *remembering* the thread-id of muted messages; and
  management (unmute etc.). Perhaps at the mu side, a list of thread-id to add
  to each query for what *not* to match.

- Support *creating* calendar invitations.
  https://github.com/djcb/mu/issues/2308
  Shouldn't be _too_ hard, for someone that uses the functionality.

- Apply the same action on multiple message, i.e., support "aggregate actions"
  apply to a set of messages, e.g. apply patch-set in a set of messages. That'll
  require some advanced scripting, maybe using Guile.
  https://github.com/djcb/mu/issues/301 https://github.com/djcb/mu/issues/2704

- As the flip-side of the previous, apply multiple marks/actions on the same
  message. https://github.com/djcb/mu/issues/2671

- Make sorting stable if there are multiple messages with the same date. We
  _could_ do this by adding some random millisecs to each message's timestamp; _or_
  complicating the search (i.e., the message hash?). Maybe leave as is?
  https://github.com/djcb/mu/issues/2527

- Perhaps better support file names with commas.. perhaps temporarily add some
  invisible unicode to fool crm-separator?
  https://github.com/djcb/mu/issues/2768

- More general, make the MIME-part handling in the viewer a bit better, we have
  the ~e~-path and the ~A~-path which is a bit confusing. Perhaps we should generate
  the MIME parts off-screen (buffer).
  https://github.com/djcb/mu/issues/2647

- Org-link type for any message matching some reference See:
  https://github.com/djcb/mu/issues/2787. Some first steps implemented
  (searching for references).

- Reply/forward/... to multiple messages at once. This is sometimes useful, and
  Gnus supports it. Does not seem trivial to re-use the Gnus code... (see
  ~gnus-summary-work-articles~ etc.).
  https://github.com/djcb/mu/issues/2799

- Add some way to add a quick bookmark for (e.g.)  the current thread
  https://github.com/djcb/mu/issues/2804

- Support running mu4e over tramp
  https://github.com/djcb/mu/issues/2815
  Seems this is mostly possible already:
    1. set mu4e-mu-binary to a shell script that sshes into the mail machine
    2. added a custom file-name-handler-alist handler that implements file
       operations for my mail directory by proxying to tramp
  But perhaps can be documented.

- Allow for watching notifications externally, perhaps using alert.el
  https://github.com/djcb/mu/issues/2825

* Done

** DONE Support mu4e-mark-handle-when also for when leaving emacs
  (kill-emacs-query-functions).
  https://github.com/djcb/mu/issues/2649

** DONE Support automatic handling for List-Unsubscribe headers and more in general,
  handle mailing-list commands https://github.com/djcb/mu/issues/2623 and
  https://github.com/djcb/mu/issues/2724 This seems useful, but probably
  requires a lot of testing to get right. Can we re-use the Gnus code for this?

  Yes: this is implemented now, in 1.12.9. Various Gnus' mailing list commands
  are now available in the mu4e message view as well, such as
  ~gnus-mailing-list-subscribe~, ~gnus-mailing-list-unsubscribe~.

** DONE perhaps use =--personal-addres= instead of =--my-address= for consistency
  https://github.com/djcb/mu/issues/2806 (done as per 1.12.12)
