Commit Graph

1799 Commits

Author SHA1 Message Date
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
Dirk-Jan C. Binnema e6e2568178 mu4e-view-gnus: Fix some flycheck warnings (doc)
Update docstring to please flycheck.
2021-08-16 09:05:37 +03:00
Dirk-Jan C. Binnema 2c99cb3374 mu4e: toggle-html: use if-let/seq-find
Slightly update the algo.
2021-08-15 20:53:52 +03:00
Étienne Deparis 1f98060ef3 mu4e: Add back the `h' keybinding to toggle HTML view in a gnus article
Fixes: https://github.com/djcb/mu/issues/2013
2021-08-14 17:42:25 +02:00
Dirk-Jan C. Binnema 17ae356e35 mu4e: Fix up documentation
And remove some unncessary message
2021-08-12 20:34:26 +03:00
Dirk-Jan C. Binnema 6537de1116 mu4e: better feedback for lazy indexing
Add `mu4e-update-index-nonlazy`, point users towards it.
2021-08-12 13:08:52 +03:00
Dirk-Jan C. Binnema c29368af93
Merge pull request #2081 from danielfleischer/link-description
Customize the mu4e org link description
2021-08-09 07:58:31 +03:00
Dirk-Jan C. Binnema aa75487ae6 mu4e-view: Enable mu4e-action-view-in-browser by default
It's useful enough to enable by default.
2021-08-08 18:18:40 +03:00
Daniel Fleischer f6230467dc Customize the mu4e org link description
There's a default function that extracts the subject but users can
define their own function. Feature existed in @1.4.15.
2021-08-08 17:43:42 +03:00
Dirk-Jan C. Binnema 6a4eb68428 mu4e-vars: Update docs for mu4e-index-lazy-check
Explicitly mention the limitation with sub-dirs, as discussed in issue
2021-08-07 17:18:15 +03:00
Dirk-Jan C. Binnema 907db013c0 mu4e-view-gnus: Manipulate gnus so it blocks remote images
mu4e reuses the default gnus-blocked-images, but sadly in the mu4e
context, the default (a function called gnus-block-private-groups) does
_not_ work (i.e., it never blocks).

Advise this function so it'll block for mu4e as well, and update the
docs.

Fixes: #2072.
2021-08-02 23:39:33 +03:00
Dirk-Jan C. Binnema 3ea20afe20
Merge pull request #2063 from nbarrientos/typo
Fix typo in docstring
2021-08-01 10:39:03 +03:00
Boris Glavic b4cf999802 replace carriage-return instead of line feed in mu4e-message-outlook-cleanup 2021-07-31 20:34:48 -05:00
Dirk-Jan C. Binnema b4ebd6c248 mu4e-utils: make schema warning/error a bit clearer
Show in the warning buffer.
2021-07-31 01:49:23 +03:00
Dirk-Jan C. Binnema 26bd64f4c9 mu4e-header: mark mu4e-headers-field-properties-function obsolete
The variable is an unused leftover.

Fixes: #2067.
2021-07-30 14:25:54 +03:00
Nacho Barrientos 02f3424280 Fix typo in docstring 2021-07-30 09:21:28 +02:00
Dirk-Jan C. Binnema f69214b4df mu4e-main: refresh after context-switch
Fixes: #2062.
2021-07-29 23:24:13 +03:00
Dirk-Jan C. Binnema 10c1aafa4c mu4e: Update mu4e-view-show-images doc string
Make clear it only applies to the old view.
2021-07-17 15:01:23 +03:00
Dirk-Jan C. Binnema d30f85934d mu4e.texi: Move docs for old view to appendix
Hopefully that makes it less confusing.
2021-07-17 15:01:23 +03:00
Thierry Volpiatto 617e8023f6
Fix mu4e-headers-prev with invisible lines
Skip invisible text at BOL possibly hidden by
the end of another invisible overlay covering
previous EOL.

This patch affects people using mu4e-thread-folding-mode but change nothing
when using mu4e as it is.
2021-07-12 06:47:36 +02:00
DiGitHubCap d394295fe7 Fix #2044: broken header movement with visual-line-mode
This fixes the issue introduced by 50f6f539 where header navigation
would break when `visual-line-mode' was enabled. Previously,
`forward-line' was used in `mu4e-view-headers-next', which disregarded
visual lines and moved by logical lines, but this was changed to
`line-move', which moves by visual lines when `line-move-visual' is
non-nil (the default when `visual-line-mode' is enabled). Thus, when
the current header line was wrapped and a message was open in the
split view, `mu4e-view-headers-next' would move to the next visual
line in the headers buffer (the same message), and then jump back to
the start of the previous line, preventing switching to the next
message.

This would also throw off navigation when `mu4e-view-headers-next' was
used with a prefix argument, since it would move by visual lines and
not headers.

`line-move-visual' is therefore set to nil before using `line-move' to
prevent these issues.
2021-07-05 22:39:31 -04:00
Dirk-Jan C. Binnema 7034556ab4
Merge pull request #2034 from thierryvolpiatto/remove_marked_overlays
Only remove mark overlays in `mu4e-mark-at-point`
2021-06-17 22:22:00 +03:00
Thierry Volpiatto 2f251209e3
Rename mmark overlay to mu4e-mark 2021-06-17 21:11:38 +02:00
Dirk-Jan C. Binnema 6ddfc61c8d mu4e: Update documentation for mu4e-view-fields
Fixes: #2041
2021-06-17 20:54:59 +03:00
Thierry Volpiatto 50f6f539f5
Ensure mu4e~headers-move honor line-move-ignore-invisible
This change is needed because forward-line doesn't honor this variable, more
generally visual lines.

Using `next-line` instead of `forward-line` allows this but it is more focused
on interactive use, so use `line-move` which handles visual lines without
warnings and return 0 or 1 just like `forward-line`.
2021-06-11 19:56:15 +02:00
Thierry Volpiatto 89538ef4fc
Only remove mark overlays in `mu4e-mark-at-point`
This prevent deleting overlays added by third party packages working as well
with overlays in mu4e-headers e.g. thread-folding , and probably in mu4e
itself as well with future features.  Also having a named overlay allows in
future features to modify any other overlays but these one.

As it is this patch doesn't modify the actual behavior.
2021-06-10 14:19:22 +02:00
Anders Johansson c090e36485 Fix bug with helm completing-read when saving attachments
Previously helm-comp-read-use-marked was bound also when completing on
a directory for saving attachments (when using a prefix argument). This
returned a list with the selected directory, which caused an error.
2021-06-02 18:03:39 +02:00
Salman Mohammadi 539a946aa4
mu4e/*: fix license notice at the start of source files
At the start of mu4e/* files, the license has been wrongly attributed
to GNU Emacs instead of mu4e.

Fixes https://github.com/djcb/mu/issues/2019
2021-05-29 23:45:10 +02:00
Dirk-Jan C. Binnema 0bb8ad6e4c
Merge pull request #2016 from Profpatsch/mu4e-view-dont-overwrite-home-and-end
mu4e-view: remove <home> and <end> bindings
2021-05-29 15:31:52 +03:00
Tassilo Horn b7fb722df6 Add support for bug-reference auto-setup in mu4e-view-mode
The bug-reference mode in Emacs 28 has support for several kinds of auto-setup,
one of them being for mail customizable by the variable
`bug-reference-setup-from-mail-alist`.  Add mu4e support for that so that users
can simply do

    (add-hook 'mu4e-view-mode-hook #'bug-reference-mode)

and have it working.

Also squash one byte-compiler warning about the (at compile-time) undefined
variable `gnus-article-buffer`.

* mu4e/mu4e-utils.el (mu4e-view--try-setup-bug-reference-mode): New function.
2021-05-28 23:33:08 +02:00
Profpatsch d106237c5a mu4e-view: remove <home> and <end> bindings
Users usually have `<home>` and `<end>` bound in their configuration,
for Spacemacs the default is “move-beginning-of-line” and “move-end-of-line”.

The mu4e view mode should not rebind basic navigation keys like these.
2021-05-20 14:16:37 +02:00
Dirk-Jan C. Binnema cefd66159a mu4e-headers: use the mu engine thread-subject
Instead of handling in the headers (which were broken).  The messages
that are hidden are _slightly_ different than before.
2021-05-04 17:36:24 +03:00
Dirk-Jan C. Binnema 2574071ac8 mu4e-view-gnus: use default for gnus-unbuttonized-mime-types
Changing it (e.g., to nil) doesn't work well with clickable URLs.
2021-05-02 23:48:30 +03:00
Dirk-Jan C. Binnema fa8505fa5a mu4e-vars: add thread-path/-date custom headers
Useful for debugging.
2021-05-02 23:33:06 +03:00
Dirk-Jan C. Binnema d0d305b48f mu-headers: Tweak thread prefix
Avoids some confusion.
Fixes: #1994.
Fixes: #1933.
2021-05-02 23:30:32 +03:00
Thierry Volpiatto b5656a7991
Fix #2006 by using cl-loop in mu4e-action-view-in-browser instead of seq
Using cl-loop is much simpler and readable, than using mapconcat+seq+seq.
Also it avoids requiring seq (which is not done actually).
2021-05-02 18:32:07 +02:00
Thierry Volpiatto 008f9fe443
Insert text without its text properties when replying 2021-05-01 20:28:55 +02:00
Dirk-Jan C. Binnema a11008deab Revert "mu4e-view-gnus: use the gnus mech to identify urls"
This reverts commit 6d9bd548f1.

Changes breaks article treatment.
2021-04-28 15:02:29 +03:00
Dirk-Jan C. Binnema 6d9bd548f1 mu4e-view-gnus: use the gnus mech to identify urls
Add mu4e~view-urlify, which replaces mu4e~view-activate-urls, and let
gnus determine where the URLs are.
2021-04-28 07:14:20 +03:00
Dirk-Jan C. Binnema 453c7f84e8 mu4e-view-gnus: don't render in invisible buffer
It seems that prevents image resizing from working.

Should help for issue #1998.
2021-04-27 00:10:11 +03:00
Dirk-Jan C. Binnema 5103f4614e mu4e-view-gnus: show URL links
Fixes: #1990.
2021-04-26 21:22:54 +03:00
Christophe Troestler 163fa1ee87 mu4e: Decode headers before viewing in browser 2021-04-26 01:50:23 +02:00
Christophe Troestler a9a874937e mu4e: Minor fixes to texinfo documentation 2021-04-26 01:40:11 +02:00
Dirk-Jan C. Binnema 3799975714 mu4e-view: only kill existing buffer 2021-04-25 14:05:27 +03:00
Dirk-Jan C. Binnema 15ab2c8d3a mu4e-view-gnus: better cleanup buffer
avoid seeing leftover MIME-parts of older buffers.
2021-04-25 13:44:57 +03:00