unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: David Bremner <david@tethera.net>
To: erik colson <eco@ecocode.net>, notmuch@notmuchmail.org
Subject: Re: sexp and strings
Date: Mon, 13 Jun 2022 15:39:25 -0300	[thread overview]
Message-ID: <874k0oz9uq.fsf@tethera.net> (raw)
In-Reply-To: <87o7yxqxy6.fsf@code.pm>

erik colson <eco@ecocode.net> writes:

> Hi,
>
> I would like to define a squery in my notmuch configuration which would
> ease a query I often use.  The query is
>
>   tag:/ddddd/
>
> where ddddd are decimal numbers.
> Now I would like to shorten this to
>
>   D ddddd
>
> wherefor I was thinking of using a macro like:
>
>   D=(macro (dossier) ((tag (regex ,dossier))))
>
> But this doesn't seem to do the job.
> Any ideas how I can achieve this ?
>

Although you have one too many sets of (), there is still a bug here.

         $ notmuch config set squery.D '(macro (dossier) (tag (regex ,dossier))'

also doesn't work.  Apparently both for regex and wildcard expansion I
did not do macro parameter expansion. In the regex case the regex
matching for tags actually happens at query construction time, so that's
why it ends up as an empty query (presumably none of your tags starts
with ,dossier).

Anyway, I think I know how to fix this, it will mean that in the corner
case of a regex starting with a comma, we'll have to use (regex ",foo").

  parent reply	other threads:[~2022-06-13 18:39 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-12 23:11 sexp and strings erik colson
2022-06-13  9:12 ` Michael J Gruber
2022-06-13  9:31   ` erik colson
2022-06-13 10:11     ` Michael J Gruber
2022-06-13 15:10       ` erik colson
2022-06-13 18:39 ` David Bremner [this message]
2022-06-14 11:22   ` [PATCH 1/2] test/sexp: add known broken tests for macro param inside rx/wildcard David Bremner
2022-06-14 11:22     ` [PATCH 2/2] lib/sexp: add parameter expansion for regex and wildcard David Bremner
2022-07-01 11:41   ` sexp and strings David Bremner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://notmuchmail.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874k0oz9uq.fsf@tethera.net \
    --to=david@tethera.net \
    --cc=eco@ecocode.net \
    --cc=notmuch@notmuchmail.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).