Commit Graph

421 Commits

Author SHA1 Message Date
0ca6389c03 mu4e: small code cleanups
Update some old code (we have 28.1 now); mostly:
- (= (length lst) x) ===> (length== lst x)
- (cdr (assoc ...)) ==> alist-get
2026-08-20 15:05:29 -07:00
65b3dbb5c9 mu4e-view: extract shared headers function refact
Extract the header insertion code from mu4e--view-gnus-display-mime into
a new mu4e--view-insert-headers function.

Add a fallback label in mu4e--view-gnus-insert-header for fields not in
mu4e-header-info, such as :user-agent.
2026-08-20 15:05:29 -07:00
86b3b47470 mu4e-view: unbreak mu4e-view-toggle-html
And add/remove the clickables as needed.
2026-08-20 15:05:29 -07:00
57fd152296 mu4e-view: don't make clickables when already
Don't make clickable links when displaying in html mode already, since
in that case the html-render handles it, and we shouldn't mess up the
display.

As discussed in issue #2094.
2026-08-20 15:05:29 -07:00
a0fae8f531 mu4e-view/headers: remove m-v-in-headers-context
Remove mu4e--view-in-headers context and the functions that use it;
instead ensure that the functions (in mu4e-headers) handle any context
switching if needed.

This allows for removing a lot of mu4e-view-... wrappers for
mu4e-headers functions. function aliases are provided for backward
compat.
2026-08-20 15:05:28 -07:00
7a8a87563e mu4e-view/mime: clean up message rendering
Make the message-rendering slightly less messy

Of course, It still is a bit messy, partly because e're bending over
gnu's message rendering backwards.

But it removes the MIME-buttons. If you want them back, use "M b".

Update the mime-handling so we can still get things even with the
MIME-buttons disabled.
2026-08-20 15:05:28 -07:00
b177bb1589 Add the mu4e-view-mark-and-next function. 2026-08-20 15:04:27 -07:00
a2b1a7cc31 mu4e: implement label updating through marks
Add support for updating label, using the marking interface.

Add some helpers for dealing with (delta) labels

Add keybindings to headers / views

Update docs
2026-08-20 15:04:26 -07:00
543c43f078 Replace "the the " with "the " 2026-08-20 15:04:26 -07:00
e6371ff705 mu4e: allow for displaying labels
Basic support for displaying labels.
2026-08-20 15:04:26 -07:00
207ed683d6 mu4e-view: create fake original-article-buffer
That allow for using more Gnus functionality, such as mailing-list support.
2025-02-07 23:43:37 +02:00
1e940c81e8 mu4e-view: add mu4e-view-jump-to-mime-part
This allows for jumping to the MIME-part by number; a thin wrapper over
the Gnus functionality.
2024-12-09 18:27:28 +02:00
18fe56a742 mu4e-view: cosmetics 2024-12-09 18:27:28 +02:00
454cfe3ea6 mu4e: add mu4e-view-mime-parts
Add a special mode for setting the gnus parameters to have images shown
/ buttonized so they can be saved etc.

Fixes #2516.
2024-12-06 19:47:55 +02:00
b4adf328f4 mu4e: use if-let*, when-let*
Avoid the silly byte-compilation warning
2024-10-28 21:50:49 +02:00
aee76e47a8 mu4e-view: fix epg error handling 2024-08-23 08:19:59 +03:00
1930d4b663 mu4e-view: fallback to raw view for unreadable messages
So users can at least see _something_...
2024-08-22 23:02:15 +03:00
a5a58975df mu4e-view.el: set bookmark-make-record-function later
Otherwise, seems it's overridden. Fixes #2718.
2024-06-27 22:53:01 +03:00
4f72e2656d mu4e: use message-field-value
Simplify

...instead of
save-restriction/message-narrow-to-headers/message-fetch-field.
2024-04-20 11:44:22 +03:00
6a12137506 mu4e--view-render-buffer: Disable Gnus bookmark-make-record-function
The function 'gnus-summary-bookmark-make-record' does not work properly with the
faux "appeasement" summary buffer, causing undesired changes in the window
configuration when the message rendering buffer's bookmark function is
called (which some packages, like Activities, Burly, and Dogears do routinely).

See <https://github.com/alphapapa/activities.el/issues/55>.

Reported-by: Daniel Goldin <https://github.com/danielgoldin>
2024-04-10 21:47:04 +03:00
ac08a35c5b mu4e-view: re-appease gnus
Otherwise some saving of MIME-parts does not work properly.
2024-04-10 21:47:04 +03:00
9557ba43a0 mu4e-view: explicitly scroll after rendering
This seems necessary in some cases; for some reason _this week_ that came
up a few time, although the code is old. Could repro with a bare emacs.

Fixes #2683.
2024-04-05 20:04:24 +03:00
7771a56026 mu4e: fix some warnings on older emacsen 2024-04-04 21:30:08 +03:00
7688a2b548 mu4e-view: appease gnus no longer
Seems it's not necessary anymore.
2024-04-04 21:30:08 +03:00
8afe3e11a2 mu4e-view: use <mouse-2> for links
Only <mouse-2>, to be consistent with eww.
2024-03-01 23:24:37 +02:00
f7ba00ec08 mu4e-view: update docstring for header customization 2024-02-24 13:47:55 +02:00
dd51f5aa12 mu4e-view: handle links with new composer 2023-12-22 21:25:12 +02:00
fa0248a361 mu4e-view: unfold threads when working in headers-context
It's a bit hard otherwise to keep headers/article in sync.

Fixes #2498.
2023-11-22 21:41:02 +02:00
3a506846f9 mu4e-view: do not bind message-alternative-emails recursively
Fixes #2597.
2023-11-16 19:03:13 +02:00
08ebe87f81 mu4e-view: fix typo
a rogue ' snuck in.
2023-11-13 10:42:04 +02:00
e71640fdfa mu4e-view: tidy-up mu4e-view-message-text 2023-11-12 23:29:51 +02:00
c76c410256 mu4e: always include message-id in mu4e-view-message-text
Regardless of mu4e-view-headers; and ensure the message-id is in
<brackets>.
2023-11-05 17:52:14 +02:00
dfe28f033a mu4e-view: do full render in mu4e-view-message-text
Otherwise decoding does not work correctly.
2023-11-04 23:38:02 +02:00
c3bc50bd02 mu4e-view: assign gnus-article-buffer in mu4e-view-mode
Some external programs (such as bbdb) seems to depend on that.
2023-11-04 11:16:24 +02:00
541c818a9f mu4e-compose: include references / in-reply-to
For replies and forwarded messages.
2023-11-02 22:21:10 +02:00
eee73f8199 mu4e: better handle alternative address
In compose / contacts
2023-10-29 17:16:05 +02:00
ea78fab0ef mu4e-view: remove ^M from raw message
They can cause rendering issues later.
2023-10-29 17:15:35 +02:00
13d068f183 mu4e: update headers/view for new composer 2023-10-25 22:05:06 +03:00
4d11abd1ca mu4e-view: ignore decoding errors
We can't do much about them; still attempt to show the message.

Fixes #2561.
2023-10-05 08:44:11 +03:00
8fc13ab8f3 mu4e: Shorten descriptions a bit 2023-09-20 22:31:19 +03:00
67c8ff75a7 Fix missing or incorrect descriptions in file headers
Try to make useful descriptions and use conventional --- to separate filename
from description.
2023-09-20 22:04:48 +03:00
c4a141975e mu4e-view: remove 'describe bindings' override
Not sure where it was there in the first place

Fixes #2541.
2023-08-24 23:28:59 +03:00
535ab6e010 mu4e-view: avoid getting gnus markers in m-v-message-text
We don't need that here (when replying to email).
2023-07-18 18:31:48 +03:00
56cea76b8d mu4e-view: don't set gnus-article-emulate-mime by default
This triggers excessive CPU-load in some corner-case messages.

Make it a 'massage' option instead.

Fixes #2515.
2023-07-17 21:53:42 +03:00
c263e4c4d7 mu4e-view: fix mu4e-view-refresh
It's didn't quite work in the post-mu4e-window world
2023-07-17 21:53:42 +03:00
993f16522a mu4e: split off mime-handling from mu4e-view & improve
Split off the MIME-handling from mu4e-view.el into its own
mu4e-mime-parts.el

Improve the implementation, updating completions with annotations.
Support "Pick all" for completing attachments and MIME-types.

Both attachment/inline disposition MIME-type with a file name are
considered "attachment" now.

Allow MIME-part actions to target multiple MIME-parts.
2023-07-17 21:53:42 +03:00
73f0691662 mu4e-view: restore point in single-window headers buffer
In single-window mode, after quitting the view, explicitly restore the
point in the headers view to the last viewed message (just like in split
view mode).
2023-06-25 11:07:45 +03:00
713bb4e9e1 mu4e: run mu4e-view-rendered-hook non-read-only
Non-read-only is likely the expected behavior.

Fixes #2500.
2023-06-09 00:30:01 +03:00
0ed7dc2102 mu4e: don't error out in mu4e-view-quit
Fixes #2487.
2023-05-10 23:49:10 +03:00
fbb68b80ee mu4e: add actions for archive-url in view/headers 2023-05-10 18:52:15 +03:00