Commit Graph

4307 Commits

Author SHA1 Message Date
djcb d28a81f506 configure: make cxx14 mandatory
fix macro usage
2017-10-27 18:39:13 +03:00
djcb f02758c1c1 configure: make compiler-check more verbose
And explicitly raise an error if the right compiler is not found.
2017-10-27 09:33:40 +03:00
djcb 160d3ec036 query-parser: cleanup source string
Ensure there's no non-' ' whitespace, and no trailing/leading spaces.
2017-10-27 01:21:57 +03:00
djcb d20683fd6b configure: allow emacs 27.x 2017-10-27 01:21:57 +03:00
Dirk-Jan C. Binnema fe04e6d820 Merge pull request #1118 from MaximeMaW/master
mu4e: Allow to set the reply policy in a smart manner
2017-10-26 23:14:08 +03:00
djcb e3ec57b250 man: update mu-query
Update documentation for new query parser
2017-10-26 21:32:52 +03:00
djcb 68847f027f mu4e: support new query parser
maildirs with spaces
2017-10-26 21:31:50 +03:00
djcb 7cd7d118e2 query-parser: support phrase queries 2017-10-26 21:31:22 +03:00
djcb e4b3174ed8 mu4e: update docs
note the new query parser doc
2017-10-25 23:50:17 +03:00
djcb 17c97d4606 mu: remove some dead code 2017-10-25 23:50:17 +03:00
djcb c434fdbd86 mu: update manpages
Add some notes about the new query parser, and add a mu-query manpage.
2017-10-25 23:50:17 +03:00
djcb 5d3d9e274f mu4e: update headers for new quoting
update for the new query parser
2017-10-25 23:50:17 +03:00
djcb 85a9098962 mu4e: merge proc-mu back into proc.el 2017-10-25 23:50:17 +03:00
djcb 2d966ee2ad tests: remove obsolete tests 2017-10-25 23:50:17 +03:00
djcb aa07c4a27c update commands for new query parser 2017-10-25 23:50:17 +03:00
djcb 5e9cafea59 integrate new query parser 2017-10-25 23:50:17 +03:00
djcb b75f9f508b lib: implement new query parser
mu's query parser is the piece of software that turns your queries
into something the Xapian database can understand. So, if you query
"maildir:/inbox and subject:bla" this must be translated into a
Xapian::Query object which will retrieve the sought after messages.

Since mu's beginning, almost a decade ago, this parser was based on
Xapian's default Xapian::QueryParser. It works okay, but wasn't really
designed for the mu use-case, and had a bit of trouble with anything
that's not A..Z (think: spaces, special characters, unicode etc.).

Over the years, mu added quite a bit of pre-processing trickery to
deal with that. Still, there were corner cases and bugs that were
practically unfixable.

The solution to all of this is to have a custom query processor that
replaces Xapian's, and write it from the ground up to deal with the
special characters etc. I wrote one, as part of my "future, post-1.0
mu" reseach project, and I have now backported it to the mu 0.9.19.

From a technical perspective, this is a major cleanup, and allows us
to get rid of much of the fragile preprocessing both for indexing and
querying. From and end-user perspective this (hopefully) means that
many of the little parsing issues are gone, and it opens the way for
some new features.

From an end-user perspective:
- better support for special characters.
- regexp search! yes, you can now search for regular expressions, e.g.
      subject:/h.ll?o/
  will find subjects with hallo, hello, halo,  philosophy, ...

  As you can imagine, this can be a _heavy_ operation on the database,
  and might take quite a bit longer than a normal query; but it can be
  quite useful.
2017-10-24 22:55:35 +03:00
djcb b53366313b toys: fix compiler warnings 2017-10-24 09:17:27 +03:00
djcb 77b8f034e9 cosmetic 2017-09-17 14:02:14 +03:00
maxime e761f74f19 Warn the user about obsolete crypto-policy variable 2017-09-02 09:24:11 -07:00
maxime 5c6561873e Warning the used abot obsolete variable
Following code review (PR 1118):
- Warn the user about the fact that the
'mu4e-compose-crypto-reply-policy' variable is deprecated
- Removed a leftover debug message
- Edited typo in the name of the new variable
2017-09-02 09:13:57 -07:00
djcb cb0025b352 mu4e: unbreak abbrevs in compose mode
Fixes issue #1119.
2017-09-02 15:56:29 +03:00
djcb 2811370d7e mu4e: fix some compiler warnings in mu4e-view 2017-09-02 15:37:35 +03:00
djcb b8eba8f1fc mu4e: add some details about the "Verified:" header 2017-08-27 20:23:33 +03:00
djcb 95d68b4741 mu4e: add action mu4e-action-copy-message-file-path
Allow for copying the file path of the current message; useful for
developers.
2017-08-27 17:35:23 +03:00
djcb 3a8748c549 mu4e: display signers in signature header
Display the signers in the signature headers, so users can easily very
that a verified signed message was indeed signed by the expected sender.

We can't check using 'From:' automatically as that gives too many false
negatives.
2017-08-27 17:33:37 +03:00
djcb 97cb519788 cosmetic 2017-08-27 17:33:21 +03:00
djcb 6eceb5eee3 mu: include signers in signature report
Include the names/email address of signer in the reports, so we can use
them in mu4e.
2017-08-27 17:32:23 +03:00
djcb e09419f85b mu4e: special-case empty hostnames
Fixes #1108
2017-08-27 15:44:23 +03:00
maxime d343f7f538 Allow to set the reply policy in a smart manner
Depending on whether the original email was encrypted, one can set
different reply policies.
2017-08-26 19:47:36 -07:00
djcb ceb7f0a8b4 mu4e: fix some typos
Hat-tip: Kelly Dean.
2017-08-13 10:09:03 +03:00
Dirk-Jan C. Binnema b9ddc8b708 Merge pull request #1109 from galaunay/Add-update-info-in-modeline
mu4e: Optionally, add info on update status in the modeline
2017-08-11 00:02:36 +03:00
djcb 0cfc23650b mu4e: cosmetics
fix whitespace
2017-08-10 23:32:10 +03:00
galaunay 513eb65388 Add info on update status in modeline 2017-07-19 13:01:30 +02:00
djcb 4014e3d210 mu: cosmetics 2017-07-02 10:46:08 +03:00
djcb 81294eb17b mu4e: allow sorting by list-id
Added support for sorting by mailing-list; note that this ultimately is
a sort by the 'list-id', so the items will be in that alphabetical
order, which is not necessarily the same as the order of the friendly
names.
2017-07-02 10:46:08 +03:00
Sean 'Shaleh' Perry 588d227171 Simplify logic of mu_str_remove_ctrl_in_place. Add tests. 2017-06-24 13:26:10 +02:00
Vladimir Sedach 6017ac46ce mu4e: Update single-window mode
Update mu4e~headers-quit-buffer and mu4e~main-menu.

mu4e~headers-quit-buffer in single-window mode now kills current buffer
instead of quitting mu4e.

mu4e~main-menu is updated to redisplay the main menu on context switch
or unknown keybinding, display errors in commands better, and to handle
C-g and ESC keys.

Thanks to Joost Kremers for the suggestions.
2017-06-24 12:54:21 +02:00
djcb afb47e7ef6 mu4e: small doc fix 2017-06-24 12:39:12 +02:00
djcb 99423234b8 mu: fix some compiler warnings 2017-06-24 12:20:16 +02:00
djcb cde35be271 Revert "Merge pull request #1099 from stsquad/fix-header-history"
This reverts commit ba75ef4b87, reversing
changes made to e735e70fa4.
2017-06-18 11:25:53 +03:00
Dirk-Jan C. Binnema 72db436a63 Merge pull request #1046 from jwhitbeck/master
mu4e: fix sending emails with no body
2017-06-17 12:10:24 +03:00
Dirk-Jan C. Binnema ff2f8fa37d Merge pull request #1094 from wataash/remove-realdelete
mu4e: remove `realdelete' option of OfflineIMAP
2017-06-17 12:08:37 +03:00
Dirk-Jan C. Binnema ba75ef4b87 Merge pull request #1099 from stsquad/fix-header-history
mu4e: don't loose search history when editing search
2017-06-17 12:05:51 +03:00
djcb e735e70fa4 mu4e: add untrash to mu4e-view
The untrash function was not defined; let's add it.
2017-06-17 12:00:20 +03:00
Alex Bennée 9d06d72d6e mu4e: don't loose search history when editing search
Even though the user may be editing this expression there is no reason
to not have the mu4e~headers-search-hist present for the prompt. Emacs
will only replace it with system wide history which would likely
contain irrelevant history for the action.
2017-06-16 14:17:28 +01:00
Wataru Ashihara 625ee4f5f9 mu4e: remove `realdelete' option of OfflineIMAP
offlineimap/Changelog.md says Gmail `realdelete' option is considered
harmful and was removed on OfflineIMAP v6.5.2.1 (2012-04-04).
2017-06-10 15:47:48 +09:00
Vladimir Sedach 9420d088eb mu4e: Added new mu4e-split-view mode: single-window
Single-window mode is meant to minimize mu4e window operations (opening,
killing, resizing, etc) and buffer changes, while still retaining the
view and headers buffers. In addition, it replaces mu4e main view with a
minibuffer prompt containing the same information.
2017-05-31 20:52:59 -07:00
djcb 34d5c61930 mu4e: try a little harder to get contacts
Some people reported problems with completing contacts. It's unclear
what's going on there. Maybe this helps.
2017-05-06 13:12:38 +03:00
djcb bbdee4e765 mu4e: cosmetics (mu4e-main) 2017-05-06 13:12:38 +03:00