Commit Graph

4380 Commits

Author SHA1 Message Date
djcb 6053c1ec1f mu: fix clang build
casting error
2017-10-30 08:25:43 +02:00
djcb 57b5fe6156 mu: some optimizations
add fast-path for (common) plain-ascii. fix silly static misuse.

should improve indexing with some single-digit percentage.
2017-10-29 13:34:57 +02:00
Thierry Volpiatto 2eccd7df90
Keep original indentation
Only whitespace changes.

* mu4e/mu4e-view.el (mu4e-view): Do it.
2017-10-29 11:51:28 +01:00
djcb 3bc53af575 mu4e: show "Searching..." message
The new query-parser makes it easier to create queries that might take a
few seconds. qShow "Searching..." so the users knows what mu is doing.
2017-10-29 12:10:10 +02:00
djcb fae58334ed configure: bump version to 1.0-alpha0 2017-10-29 11:25:12 +02:00
djcb 8c531bd92b configure: don't require autoconf-archive
We ship the few macros we need or make them conditional
2017-10-29 11:25:12 +02:00
djcb a55b010ca5 m4: add valgrind-check macro 2017-10-29 11:21:20 +02:00
Thierry Volpiatto 8db567c980
Link urls after running `mu4e-view-mode`
* mu4e/mu4e-view.el (mu4e-view): `mu4e~view-make-urls-clickable`
should run after `mu4e-view-mode` otherwise an error popup telling the
hash-table storing links is nil.
2017-10-29 07:43:00 +01:00
Thierry Volpiatto 0a36c8431a
Ensure mu4e-view-mode-hook run after text insertion
* mu4e/mu4e-view.el (mu4e-view): Do it.
2017-10-29 06:54:13 +01:00
djcb af4f12c696 mu4e: allow longer queries
Tell base64-encode-string not to include newlines.
2017-10-28 20:33:41 +03:00
djcb 4ee8c5e1d6 mu4e: work around quoting issues
Use base-64 for now.
2017-10-28 18:23:08 +03:00
djcb 2d94ff856e configure: update (c) year 2017-10-28 14:13:30 +03:00
djcb 55ffb524db tokenizer: clean unicode-aware 2017-10-28 14:13:09 +03:00
djcb 0e5e8b6bce parser: add more tests 2017-10-28 14:12:50 +03:00
djcb a4fefc7256 mu4e: make mu4e-compose-crypto-reply-plain-policy nil by default
Making it sign by default is a bit too aggressive.
2017-10-28 11:23:57 +03:00
djcb 3ce8cd7e70 mu4e: small doc update
Update dependency information.
2017-10-28 11:17:03 +03:00
djcb 109657d879 m4: include c++14 m4 macro
some distros -- notably Ubuntu 16.04 -- do not include
ax_cxx_compile_stdcxx_14.m4 in their autotools-archive package (since
the macro is too new).

This breaks the compilation since we need that macro to get the correct
c++14 flags. So, let's add them ourselves, so users don't have to shop
around for these macros themselves.
2017-10-28 11:14:17 +03:00
djcb a3701e9459 configure.ac: use AX_CXX_COMPILE_STDCXX_14
and just that.
2017-10-27 21:03:36 +03:00
djcb 457a0a17a2 mu4e: update query quoting for new parser 2017-10-27 18:44:19 +03:00
djcb 509500a9d2 server: update query processing
fix quoting issues with mu4e
2017-10-27 18:43:33 +03:00
djcb 6ce7c89488 phrases: only allow for index fields 2017-10-27 18:42:58 +03:00
djcb fe18603843 parser: fix some post-c++14 code
don't require anything post c++14
2017-10-27 18:40:37 +03:00
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
Alex Branham 7f16b7422d
mu4e: simplify what "e" does in mu4e-view mode
The default was to use e to save one attachment or C-u e to save multiple. This
simplifies it so that e simply offers to save one or many attachments.
2017-10-09 14:15:51 -05: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