Commit Graph

1843 Commits

Author SHA1 Message Date
Tassilo Horn 0baa735f18 Allow a function as mu4e-view-open-program 2022-04-29 14:03:05 +02:00
Tassilo Horn 497dd16d7b Add support for List-Id completion (list:<List-Id>) 2022-04-29 10:27:52 +02:00
Daniel Fleischer eebb0eddd6 Last updated timestamp in the main screen
* mu4e/mu4e-main.el: showing last updated

based on the `:tstamp` of `mu4e-index-update-status` plist.
2022-04-18 19:06:54 +03:00
Dirk-Jan C. Binnema cc32257f1c mu4e: improve search/rendering benchmark
Include numbers for search from start to finish.
2022-04-16 16:20:38 +03:00
PRESFIL 5516422144
meson: Install mu4e/mu4e-about.org
`mu4e` expects this file when activating the [A]bout link in `mu4e-main`
view, but when building the `mu-git` package from the AUR, this file
did not appear in the resulting package.

Now this file is not lost.
2022-03-26 23:00:56 +03:00
Dirk-Jan C. Binnema 1fc0a6047f mu4e: ensure we check for a _local_ mu
Unless we explicitly use a local directory, the tramp package may cause emacs to
use a _remote_ one, which then fails, as mentioned in issue #2193.
2022-03-07 06:50:18 +02:00
Dirk-Jan C. Binnema 3b205dacff meson: remove some warnings and add one 2022-02-26 14:14:27 +02:00
Dirk-Jan C. Binnema f10a7560f7 build: fix some warnings 2022-02-21 23:51:46 +02:00
Dirk-Jan C. Binnema a0ec982789 mu4e/server: honor rename-move for view-message, too
It's technically a 'move', so apply user preference.
2022-02-13 14:33:12 +02:00
Dirk-Jan C. Binnema a66fd4dae4 mu4e-headers: warn earlier when message does not exist
check path before trying to show it.
2022-02-13 12:04:47 +02:00
Dirk-Jan C. Binnema 99993bea69 mu4e-headers: tweak mark-as-orphan option
Make 'first the default, and some whitespace fixes.
2022-02-06 10:44:47 +02:00
Dirk-Jan C. Binnema 769ad20c40
Merge pull request #2203 from mhcerri/mu4e-headers-thread-mark-as-orphan
mu4e-headers: Add mu4e-headers-thread-mark-as-orphan option
2022-02-06 10:41:28 +02:00
Dirk-Jan C. Binnema 6dafffd07a mu4e-server: tweak stopping the mu4e server
Stop listening for server output when we're shutting down.
2022-02-03 23:04:18 +02:00
Dirk-Jan C. Binnema cc3be78dc5 mu4e-main: use mu4e~headers-jump-to-maildir
Re-fix hasty earlier fix; and improve the code a bit.

HT: @tsdh.
2022-01-29 19:53:37 +02:00
Dirk-Jan C. Binnema b8e696000f mu4e-main: fix jump-to-maildir typo
Fixes: #2206
2022-01-29 15:55:51 +02:00
Dirk-Jan C. Binnema 20568cba70 mu4e-view: open tmp files read-only
When using the "open-in-emacs" handler, open the temp file as read-only. It's a
temp file, so editing isn't very useful.
2022-01-24 19:00:19 +02:00
Dirk-Jan C. Binnema de3c9a25e8 mu4e.texi: improve mu4e-mailing-list-patterns example 2022-01-23 14:27:00 +02:00
Dirk-Jan C. Binnema a4707afe12 mu4e: cleanups and flycheck fixes
- Remove some unused faces
- Fix some flycheck warnings
- Replace some `cl-` functions with `pcase` and `seq`
2022-01-23 14:27:00 +02:00
Marcelo Henrique Cerri 74437b6374 mu4e-headers: Add mu4e-headers-thread-mark-as-orphan option
To mark only the first message in the thread as orphan, allowing to
replicate the thread structure used by mutt and other clients.
2022-01-19 16:59:38 -03:00
Dirk-Jan C. Binnema a6b996d00e search: restore jump-to-message
Fixes: #2169.
2022-01-18 17:00:01 +02:00
Dirk-Jan C. Binnema e5ead56b2a mu4e-view: fix flycheck warnings
Let's make things clean.
2022-01-15 12:00:27 +02:00
Dirk-Jan C. Binnema a4e5e3adf5 mu4e: attempt to delete loading window upon mu4e-error
When there's a mu4e-error, opportunistically delete the 'Loading..' window.
2022-01-15 10:44:03 +02:00
Dirk-Jan C. Binnema 904214ba17 mu4e-view: double-check message file exists
So we can warn user early.
2022-01-15 10:20:32 +02:00
Dirk-Jan C. Binnema b072b4a57e mu4e-view: Add defcustom mu4e-view-open-program
When xdg-open is not enough.
2022-01-12 22:32:21 +02:00
Dirk-Jan C. Binnema 324b6f5022 mu4e-view: experiment xwidget support
Add experimental support for displaying html messages in an xwidget; this
doesn't work for all messages.
2022-01-10 22:07:06 +02:00
Dirk-Jan C. Binnema 42d5cde612 mu4e-view: catch epg error
Give a bit more user-feedback when e.g. EPG fails to decrypt a message.
2022-01-09 14:08:24 +02:00
Dirk-Jan C. Binnema bbf55256e5 mu4e-view: add massage toggle for text filling
For some mis-rendered messages, it can be useful to toggle filling, so add this
as an massage ('M') option.
2021-12-25 11:01:33 +02:00
Dirk-Jan C. Binnema 8704101afc mu4e-folders: fix typo in docstring 2021-12-19 23:15:42 +02:00
Dirk-Jan C. Binnema 8dcdd0a815 mu4e-view: add toggle to show all mime-parts
Add a toggle to show (links for) all top-level MIME-parts, so you can e.g.
perform actions on 'inline' images.
2021-12-19 23:15:42 +02:00
Tassilo Horn c14ffa2918 Add eldoc support in headers views
When using a side-by-side split layout, i.e., headers left of message view, it
easily can happen that parts of the headers (like a longer subject) are not
visible without horizontal scrolling.  So eldoc to the rescue, which can echo a
customizable message (see `mu4e-headers-eldoc-format`) containing stuff like
subject, from, to, date, etc. in the echo area.
2021-12-15 21:21:41 +01:00
Daniel Nagy e1022fe9b1
Assign `list-buffers-directory` to search query
for mu4e-header buffers, this displays the search query in
`M-x list-buffers` instead of showing an empty path column.
2021-12-02 11:17:53 +01:00
Yuri D'Elia 86f88299e7 Ignore existing compiled files when byte-compiling
Set load-prefer-newer to avoid loading old byte-compiled files when
rebuilding an existing tree.
2021-11-13 14:35:07 +01:00
Dirk-Jan C. Binnema 113a831641 mu4e: add (from|to)nameoraddress properties for links
I.e. use name but fall back to address if there's no name.
2021-11-12 23:05:08 +02:00
Dirk-Jan C. Binnema ef25637128 mu4e: use 'checked' instead of 'processed'
Update to the new name.
2021-11-10 22:32:28 +02:00
Dirk-Jan C. Binnema dd3efb0b8b mu4e: update mu4e-compose-context-switch
Update mu4e-compose-context-switch:
1) attempt to update the message signature as well
2) remove the (no longer working) code to try to move the underlying file (which
   was a bit too fragile) (see issue: #2140)
2021-11-10 22:32:28 +02:00
Dirk-Jan C. Binnema 0cbd18e7a5 mu4e: server: improve docstrings 2021-11-10 22:31:58 +02:00
Dirk-Jan C. Binnema 67b16acbb2 mu4e: support message-user-organization
Automatically include Organziation: if set and update when changing the context.

Fixes: issue #2112.
2021-11-07 12:50:16 +02:00
Dirk-Jan C. Binnema 90a748aba1 mu4e-compose: make undo work across compose saves
Hide the header-separator change from the user-visible undo.
2021-11-07 11:47:29 +02:00
Dirk-Jan C. Binnema 5e55ef7c79 mu4e: finalize mu4e-query-rewrite-function migration
There was one left.
2021-10-31 13:02:11 +02:00
Dirk-Jan C. Binnema aebec9714b mu4e-headers: save-excursion when updating message
Otherwise, the updated header may end up in the wrong buffer.

Fixes: #2172.
2021-10-31 11:42:50 +02:00
Dirk-Jan C. Binnema 6005cf1b6c mu4e: Update mu4e() docstring
Typos.
2021-10-31 11:27:55 +02:00
Dirk-Jan C. Binnema 5d155841a6 mu4e: Use mu4e-query-rewrite-function
The (new) mu4e-search-query-rewrite-function is a bit too long, let's keep the
old one.
2021-10-31 11:26:58 +02:00
Dirk-Jan C. Binnema 892b9ce1fa mu4e: add note about restarting to mu4e-mu-home 2021-10-30 15:46:03 +03:00
Dirk-Jan C. Binnema 81133c4022 mu4e: Fix typo 2021-10-28 09:16:44 +03:00
Yaman Qalieh f1570dafd4 Add contact completion in search 2021-10-27 14:47:08 -04:00
Dirk-Jan C. Binnema bd40ffa718 mu4e-headers: fix updated check (for auto-update)
The check for # of updated messages was wrong; fix it.

Fixes: #2163.
2021-10-26 14:13:34 +03:00
Dirk-Jan C. Binnema 0303f5d931 mu4e: compose/draft: remove some mostly obsolete things
Avoid some compiler warnings.
2021-10-22 08:33:51 +03:00
Dirk-Jan C. Binnema c63acd14a4 mu4e: meson hack to appease emacs native compilation
It doesn't really support srcdir != builddir, so copy the sources to the
builddir and all are happy.
2021-10-22 08:33:51 +03:00
Dirk-Jan C. Binnema 8ad5fd49c9 mu4e: support batched query results
Support the new batched query results from the mu server; these are much faster
to render (2-3x it seems).

Rearrange the code a bit to avoid byte-compiler warnings.

Obsolete mu4e-header-func, to be replaced by mu4e-headers-append-func.
2021-10-22 08:33:51 +03:00
Dirk-Jan C. Binnema f3e3cc9ca2 mu4e: always run mu4e-index-updated-hook after index
Fire mu4e-index-updated-hook after any index operations, where anything changed
or not. Add a new variable `mu4e-index-update-status' which can be used to see
what changed (if anything) in the last indexing operation.

Keep mu4e-message-changed-hook in place; it only fires when a message
changed (and when it is update).

Remove the long-obsolete `mu4e-msg-changed-hook'.
2021-10-22 08:33:51 +03:00
Tassilo Horn aa59f9ce08 Re-enable maildir completion in search query
This has been commented out in 3cd127d8a for no apparent reason.
2021-10-21 22:13:10 +02:00
Dirk-Jan C. Binnema 701ca75536 mu4e/server: split message / metadata
Split message and metadata, so we can use pristine (possibly pre-cached)
messages. Update dependencies.
2021-10-20 22:41:48 +03:00
Dirk-Jan C. Binnema 7156ff7fac mu4e: fix some compiler warnings 2021-10-18 21:52:37 +03:00
Dirk-Jan C. Binnema 4a0490acbf
Merge pull request #2152 from progfolio/fix/osbolete-fn
mu4e-search-edit: Fix obsolete alias; update documentation
2021-10-13 14:47:48 +03:00
Dirk-Jan C. Binnema 5db8fdc49d mu4e: Do not defvar abbrev tables
I'm not quite sure why it was done in the first place, and it seems to have
unwanted side-effects. So let's turn it off and see if anything breaks.

Fixes: #2146.
2021-10-06 08:11:30 +03:00
Nicholas Vollmer baae737674 mu4e-search-edit: Fix obsolete alias; update documentation
Replace obsolete variable alias with obsolete function alias for mu4e-headers-search-edit.
Update docstring for mu4e-view-search-edit to reference the new function.
2021-10-03 10:33:49 -04:00
Thierry Volpiatto a6207d6d08
Reset `gnus-article-buffer` in mu4e-view
This is needed when gnus is used along mu4e for other purpose like
reading News, in this case gnus rename `gnus-article-buffer` and we
end up with an unrelated buffer-name in mu4e.
2021-09-30 16:56:46 +02:00
Dirk-Jan C. Binnema 4dc15334a6 mu4e-compose: fix some overly long lines 2021-09-30 15:41:38 +03:00
Dirk-Jan C. Binnema a8ddc1728d
Merge pull request #2147 from tsdh/mu4e--update-buffer-fix
Fix refs to mu4e~update-buffer which has been renamed to mu4e--update-buffer
2021-09-30 15:39:17 +03:00
Dirk-Jan C. Binnema 4ecb59aed5
Merge pull request #2142 from tsdh/function-valued-mu4e-split-view
Allow a function as mu4e-split-view value
2021-09-30 15:38:43 +03:00
Dirk-Jan C. Binnema 3e27a613be
Merge pull request #2137 from thierryvolpiatto/fix_mu4e_get_view_buffer
Fix `mu4e-get-view-buffer` (#2132)
2021-09-30 15:35:22 +03:00
Dirk-Jan C. Binnema 6f3c085490
Merge pull request #2129 from Chris00/master
mu4e-headers: Avoid the obsolete command warning
2021-09-30 15:34:27 +03:00
Tassilo Horn 1bf3054167 Fix refs to mu4e~update-buffer which has been renamed to mu4e--update-buffer 2021-09-29 21:21:35 +02:00
Tassilo Horn f7985103e0 Allow a function as mu4e-split-view value
This allows to have a function returning a window as value of
`mu4e-split-view`.  I'm using this patch since quite some time locally with the
following function.

```el
(defun th/mu4e-split-view ()
  (let* ((headers (mu4e-get-headers-buffer))
         (headers-win (and headers (get-buffer-window headers)))
         (view (mu4e-get-view-buffer))
         (view-win (and view (get-buffer-window view))))
    (cond
     ;; There's a view window, just use it.
     (view-win view-win)
     ;; Just one window, split sensibly, i.e., horizontally or
     ;; vertically depending on geometry.
     ((one-window-p) (split-window-sensibly))
     ;; Otherwise, use the tallest window.
     (t (car (sort (delq headers-win (window-list))
                   (lambda (a b)
                     (> (window-height a) (window-height b)))))))))

(setq mu4e-split-view #'th/mu4e-split-view)
```
2021-09-25 13:51:44 +02:00
Tassilo Horn 731c58df16 Fix declare-function statements referencing gone mu4e-utils 2021-09-25 10:23:20 +02:00
Thierry Volpiatto 20de2c8659
Fix `mu4e-get-view-buffer` (#2132)
It actually returns a buffer-name whereas it should return a buffer
object which make `mu4e~switch-back-to-mu4e-buffer` fail because
`buffer-live-p` expects a buffer object.
2021-09-23 07:43:14 +02:00
Christophe Troestler a12b44f3a3 mu4e-headers: Avoid the obsolete command warning 2021-09-08 09:24:14 +02:00
Christophe Troestler 76e0a79d87 mu4e-list: fix typo 2021-09-07 11:54:04 +02:00
Dirk-Jan C. Binnema f7e0bce67d mu4e.texi: remove docs on old message view 2021-09-05 10:57:41 +03:00
Dirk-Jan C. Binnema 964ab0e2c7 build: Extend makefile targets
Add a target for build mu4e-docs, add CSS file for that, too.
2021-09-04 10:41:07 +03:00
Dirk-Jan C. Binnema 5303b8cdc8 mu4e.texi: improve regexp example 2021-09-04 08:42:18 +03:00
Dirk-Jan C. Binnema ecea966169 mu int: improve docs for regexp addresses 2021-09-04 08:34:17 +03:00
Dirk-Jan C. Binnema 1c076e6c43 mu4e.texi: Add regexp --my-address example 2021-09-04 08:25:29 +03:00
Dirk-Jan C. Binnema a53ca7da5e mu4e.texi: Update build instructions
Update the meson instructions.
2021-09-01 23:25:45 +03:00
Dirk-Jan C. Binnema 3a39eff1df mu4e-(actions|control|org|update).el: tidy up
Fix flycheck warnings, and use '--' instead of '~' for private
variables/functions.
2021-08-31 08:46:27 +03:00
Dirk-Jan C. Binnema 162f5896ae mu4e-view: port of save-attachment fix
Port of #b349b24 (courtesy of danielfleischer) to not fail to detect attachments
in certain messages.
2021-08-30 18:35:35 +03:00
Dirk-Jan C. Binnema 128bc731a6 mu4e: avoid some compiler warnings in search, contacts 2021-08-30 18:28:52 +03:00
Dirk-Jan C. Binnema 9b02d56c05 build: build mu4e-{contacts,search}.el(c) too
Fixes: #2119
2021-08-30 18:27:04 +03:00
Dirk-Jan C. Binnema ab5d306c85 mu4e/mu4e.el: add mu4e--default-handler
It was missing.
2021-08-30 14:47:45 +03:00
Dirk-Jan C. Binnema f797acca6b mu4e-headers: support mailings lists
Need to require mu4e-lists.
2021-08-30 08:39:25 +03:00
Dirk-Jan C. Binnema dc14f93c06 mu4e: remove mu4e-utils
No longer needed; remove all traces.
2021-08-30 08:36:41 +03:00
Dirk-Jan C. Binnema 7ee30ed543 mu4e/search: use mu4e-search
mu4e-headers-search is gone
2021-08-30 08:19:45 +03:00
Dirk-Jan C. Binnema 42f2e73025 mu4e-view: remove overlays when erasing
erase-buffer is not enough (you'd see '[1][2]' etc. in the buffer beginning)
2021-08-29 21:40:42 +03:00
Dirk-Jan C. Binnema a6514fd683 mu4e-server: rename from mu4e-proc
Rename mu4e-proc.el into mu4e-server.el

Rename mu4e~proc... into mu4e--server...

Update users, too.
2021-08-29 21:40:42 +03:00
Dirk-Jan C. Binnema 6ea39f886c build: update for changed mu4e files 2021-08-29 21:40:42 +03:00
Dirk-Jan C. Binnema 9157d9102d mu4e-utils: refactor into mu4e-helpers, separate files
Usurp more of the utils code than can be re-used without further dependencies in
helpers.

Split off specific parts in their own file.

After the helper/utils changes, update the rest of mu4e to take the changes into
account.
2021-08-29 21:40:42 +03:00
Dirk-Jan C. Binnema e6be09e626 mu4e-view: remove old view
Remove the pre-Gnus view, and remove the infrastructure to handle both the new
and old views.
2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema 411b95acd7 vars: refactor variables
Remove some variables from mu4e-vars, and move them to where they are used.

Move some more items to mu4e-helpers.
2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema 3cd127d8ae mu4e-search: split off search functionality in minor-mode
Split off the search functionality from mu4e-headers.el into a new
mu4e-search.el.

Clean up things a bit and create a minor mode in which to add the keybindings.

Enable this in main/headers/view.
2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema 035977a89a mu4e-context: make it a minor-mode
Add mu4e-context-minor-mode, for re-use in other parts of mu4e.

Update those parts + documentation.
2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema bfd0618e58 mu4e-context: fix some flycheck warnings 2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema d7055b7ed8 mu4e-helpers: split off from mu4e-utils
Create a new mu4e-helpers, which will usurp some of the parts mu4e-utils that do
not depend on other parts of mu4e.
2021-08-29 20:30:29 +03:00
Dirk-Jan C. Binnema 975604d3ee build: make meson the default build system
We still support autotools for now, but it is no longer the default.
2021-08-28 11:25:05 +03:00
Dirk-Jan C. Binnema faed25f2e5 view-gnus: Add S-SPC to scroll-down binding
The manual promises it's there.

Fixes: #2114.
2021-08-26 22:02:41 +03:00
Dirk-Jan C. Binnema e6bfdda2fe mu4e-headers: restore mark after update
Works-around, fixes: #2076.
2021-08-25 22:57:12 +03:00
Jakub Darul 167bb83d22
fix: mu4e-view-save-attachments void variable
This `_` looks like typo (correct me if I'm mistaken).
`_arg` instead of `arg` here caused `Symbol’s value as variable is void: arg`.
2021-08-25 15:00:15 +02:00
Dirk-Jan C. Binnema 372726cb9e
Merge branch 'master' into fix_dups_when_saving_attachments 2021-08-21 16:16:58 +03:00
Dirk-Jan C. Binnema b62f70f9d0 mu4e-compose: regenerate Date: when user removes it
However, we do not update the date if user does not do so.
2021-08-19 10:56:56 +03:00
Thierry Volpiatto 7929b9a852
Use and instead of progn and fix some long lines 2021-08-17 16:11:21 +02:00
Thierry Volpiatto 58cff913fe
Create numbered backup of attached file when already exists #2090 2021-08-16 13:29:07 +02:00