Commit Graph

347 Commits

Author SHA1 Message Date
44ba631a34 mu-find: implement format=json2
Implement a new experimental json2 format for mu-find, which gets rid of
the ":" prefixes for fields, i.e., "subject" instead of ":subject".
Document it as well.
2025-03-23 19:47:09 +02:00
3dbd8b9763 mu4e: handle conversion from pcre regexps
mu server uses PCRE-compatible regular expressions, but mu4e needs
Emacs-style. In simple cases, the two are the same, but when it gets
slightly more complicated they do not.

E.g.,
  (foo|bar) => \(foo\|bar\)

Mu4e can do the conversion automatically, but for this the pcre2el
package (available in MELPA) is required, and is used if user installs
is. Anyway, this code implements the automatic conversion and adds some
documentation.

Fixes #2816.
2025-02-16 18:47:49 +02:00
a33530e917 mu.1.org: update COLOR information 2025-01-26 18:56:38 +02:00
5e2b7d52b2 mu-query.7: update documentation
In particular, regex searches.
2025-01-08 22:12:47 +02:00
1b2d9d3847 mu-find: insist on --linksdir for links
Fixes #2790.
2024-12-04 23:18:15 +02:00
8fefc52eee query: add related: combi-field + test
Add a new combination (pseudo) field "related:", which combines
"message-id" and "references"
2024-12-02 11:43:14 +02:00
05be072676 man: improve mu-query manpage 2024-12-01 23:45:28 +02:00
b0d8d42dd2 indexer: make lazy check even lazier
In lazy-mode, we were skipping directories that did not change; however,
this didn't help for the case were users received new messages in big
maildirs.

So, add another check where we compare the ctime of message files with
the time of the last indexing operation. If it's smaller, ignore the
message-file. This is faster than having to consult the Xapian database
for each message.

Note that this requires in mu4e:
      (setq mu4e-index-lazy-check t)
or
   --lazy-check
as a parameter for 'mu index'.
2024-11-10 13:47:54 +02:00
27ba0a0d02 Merge pull request #2760 from markk/mk/query-man-page
Correct mu-query man page
2024-09-25 19:32:56 +03:00
9e0d0b8355 mu-init: fix typo in manpage, improve 2024-09-25 19:27:14 +03:00
23b39759e0 man: update description of logging
Fixes #2762.
2024-09-24 23:33:00 +03:00
6426363e01 Correct mu-query man page
Update mu-query man page to point to the mu info fields command.
2024-09-15 09:46:34 +01:00
61ba9296b2 man: attempt to avoid \u escape in man building
This may help for #2756
2024-09-15 10:59:44 +03:00
QP
0282c8551d Replace zero-width spaces in man pages with an empty string.
The zero-width spaces are added by the `man-link` macro to ensure bold text
formatting when exporting from org, but they interfere with man page
functionality in Emacs.
2024-09-04 12:34:53 +02:00
547cc4ce74 mu-man: typeset option values differently
Use underlining only, do not use <>, as it is the most often done.
2024-07-22 16:09:17 +09:00
cee4823f33 mu-man: typeset file names using underlining
Make the emphasis more consistent, and do it using underscores in
Org documents, since verbatim is rendered as underlined anyway.
2024-07-22 15:40:57 +09:00
d46b428f7b mu-man: delete suspicious words 2024-07-22 15:28:47 +09:00
5ed773aa4d mu-man: include whole prefooter in mu-view 2024-07-22 15:26:31 +09:00
ec42817a5c mu-man: typeset reference in included file 2024-07-22 15:26:27 +09:00
b09ac79330 mu-man: fix the BUGS section of mu-view 2024-07-22 15:21:09 +09:00
dcc3807155 mu-man: improve typesetting of references
Try to stick to the man-pages(7) standard.
2024-07-22 15:18:46 +09:00
d2ec1751eb mu-man: add macro for referencing manual pages 2024-07-22 14:48:29 +09:00
96f8729cb5 mu-man: use more bold text
Make occurences of "mu", small commands such as "mu init", and
command-line arguments bold.
2024-07-18 10:01:45 +09:00
f1a2153578 mu-man: improve typesetting of synopses 2024-07-17 23:51:39 +09:00
fab36e283a common-options: capitalize first sentences 2024-07-16 14:11:50 +09:00
f66a4a37f5 mu-1: slightly improve syntax 2024-07-16 11:44:17 +09:00
a9872fc536 mu-1: remove extra '~' 2024-07-16 11:02:25 +09:00
a23fc80e37 mu-1: add missing word 2024-07-16 11:01:54 +09:00
f813498f4d mu: add --reindex option for mu index
I.e. without having to reinit explicitly.
2024-04-05 19:03:42 +03:00
9275068204 man: Escape Org heading-like lines in example 2024-03-28 11:04:05 -05:00
fcdc47fcec mu-index.1: fix typo 2024-03-19 08:31:42 +01:00
7e89e3715b mu-query: use mu info tables 2024-03-17 10:59:37 +02:00
7ca566bda6 Document personal and calendar flags 2024-03-16 15:44:09 -07:00
0b68afe9aa mu-index.1: add note about encryption
mu index does not decrypt.

Fixes #2660.
2024-03-07 22:56:10 +02:00
721aadc140 man: change quoting style
The man-page sources use single quotes to quote text.  However, this can be
problematic in man-pages because if a single quote appears at the beginning of a
line the following word is interpreted by troff as a macro.  For example, this
paragraph in mu-easy.7:

    What if we want to see some of the body of the message? You can get a 'summary'
    of the first lines of the message using the \fI\-\-summary\-len\fP option, which will
   'summarize' the first \fIn\fP lines of the message:

elicits this warning:

    $ man --warnings obj-x86_64-linux-gnu/man/mu-easy.7 >/dev/null
    troff:<standard input>:166: warning: macro 'summarize'' not defined

and gets truncated:

    What  if  we want to see some of the body of the message? You can get a
    'summary' of the first lines of the message using the --summary-len op‐
    tion, which will

One could adjust the line-wrapping to move the quoted text away from the
beginning of the line, but that is fragile.  Another possibility would be to use
the troff escape-sequences for open and close quotes (`\(oq` and `\(cq`
respectively), but ox-man is being used precisely to avoid having to handle
troff directly.  Instead use back-ticks for left quotes.  Thus:

    What if we want to see some of the body of the message? You can get a `summary'
    of the first lines of the message using the \fI\-\-summary\-len\fP option, which will
   `summarize' the first \fIn\fP lines of the message:

which is rendered correctly:

    What  if  we want to see some of the body of the message? You can get a
    `summary' of the first lines of the message using the --summary-len op-
    tion, which will `summarize' the first n lines of the message:

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
c76aa53156 man: fix formatting of NAME sections
The command names are formatted inconsistently, e.g.:

    * NAME

    ~mu add~ - add one or more messages to the database

versus:

    * NAME

    *mu cfind* is the *mu* command to find contacts in the *mu* database and export them

versus:

    * NAME

    mu server - the mu backend for the mu4e e-mail client

and the format, with a space between "mu" and the subcommand, is not compatible
with mandb(8).  Use formatting which is consistent and replace the spaces with
hyphens.

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
e5fe18c2c2 man: disable captions in tables
The tables don't define any captions, and ox-man outputs a `.TB` macro that
groff does not support.

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
d8389e9721 man: fix formatting of underscores
In org-mode, underscores are used to represent subscripts.  Thus, `a_b`
will be transcoded to `a\d\s-2b\s+2\u`.  Configure org-mode only to do
this for `a_{b}`.

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
f70efd3cec man: fix bold syntax-error
There's a closing asterisk missing from a bold string.

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
0e0457190d man: build mu-move.1
1.12.0 includes a new mu-move.1 man-page but the list of man-pages in
man/meson.build was not updated, so it is not built.

Signed-off-by: Jeremy Sowden <azazel@debian.org>
2024-03-06 21:12:32 +00:00
dcbcd697f4 mu-init: insist that --maildir is absolute 2024-02-26 01:08:44 +02:00
b4c768e6d0 mu-init: guess maildir when --maildir is missing
Re-instate the guessing that's in the manpage. Add unit tests.
Update documentation.

Fixes #2616.
2024-01-01 10:33:03 +02:00
ae4f49cfc0 init: interpret batch-size 0 as 'default'
This makes writing tests easier.
2023-12-29 22:28:10 +02:00
c9b06a55e7 man: fix unreproducible copyright years
967b724e75 ("build: avoid dynamic dates for reproducibility")
introduced the `mu_date` variable to hard-code a build-date.  This is
used for the dates embedded in the texinfo documentation, but `date` is
still called to set the copyright years in the man-pages.  Use `mu_date`
there too.

Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
2023-11-19 12:30:34 +00:00
967b724e75 build: avoid dynamic dates for reproducibility
We were using dates (in documentation, (c) notices etc) based on the
build-date; that makes it hard to do reproducible builds, so specify a
specific date in the top-level meson file, and use that throughout.
2023-10-14 15:24:00 +03:00
2d20074b99 mu-move: add new move sub command
Add sub-command to move messages; add tests and docs.

Fixes #157
2023-09-24 17:29:08 +03:00
da49e77449 mu-info: add 'maildirs' topic
For showing all maildirs under the root.
2023-09-16 11:12:16 +03:00
3ee2ce9647 mu/mu: tweak logging / exception handling 2023-09-13 23:04:44 +03:00
976266631c man: update query manpage 2023-09-12 21:35:47 +03:00
264bb092f0 support xapian ngrams
Xapian supports an "ngrams" option to help with languages/scripts
without explicit wordbreaks, such as Chinese / Japanese / Korean.

Add some plumbing for supporting this in mu as well. Experimental for
now.
2023-09-09 17:26:20 +03:00