emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Ihor Radchenko <yantar92@posteo.net>
To: Jens Schmidt <jschmidt4gnu@vodafonemail.de>
Cc: Org-mode <emacs-orgmode@gnu.org>
Subject: Re: org-agenda queries for absent properties
Date: Wed, 02 Aug 2023 06:45:48 +0000	[thread overview]
Message-ID: <87wmyendr7.fsf@localhost> (raw)
In-Reply-To: <3ac83971-2805-cfde-28a3-891814b95c25@vodafonemail.de>

Jens Schmidt <jschmidt4gnu@vodafonemail.de> writes:

> On 2023-07-31  08:45, Ihor Radchenko wrote:
>
>> If you are up to a job of adding this to `org-make-tags-matcher' and
>> not breaking things, you can try.
>
> Depends a bit on the required collateral changes: Updating ORG-NEWS and
> doc/org-guide.org should be no problem.  Doing a naive grep-based search
> I haven't found tests on `org-tags-view' or `org-make-tags-matcher', so
> I hopefully wouldn't need to add anything new in that direction.

There are some tests in testing/lisp/test-org.el:test-org/map-entries
If we add new feature, we should better add test coverage for it as
well. Should not be hard.

> Finally, the first step probably would be to make that humongous regexp
> in `org-make-tags-matcher' a bit more readable.

Agree.

> ... What would you prefer?
> `rx' or sth long the following lines (not checked for equality yet):
>    (re (concat
>         ;; AND operator (OR is done by global splitting)
> ...

`rx' would be great.
But even adding comments like in your example would be an improvement.

>  > But we should really provide more
>  > readable match syntax, similar to org-ql; sooner or later.
>
> Agreed on that if the new syntax will allow for equally succinct
> queries.  Plus a very cursory, doc-only review of org-ql hasn't
> revealed to me how I'd do numeric property comparisons with it.

Similar does not mean the same :)
I am thinking about something like
https://github.com/alphapapa/org-ql#non-sexp-query-syntax

For example, org-ql has

(src :lang "elisp" :regexps ("defun"))
and
src:defun,lang=elisp

We may as well allow >,<,... in addition to =.

I had this in mind for a wile, but I am still hoping that we can
eventually (when it is added to Emacs) rely upon peg.el for parsing.
https://yhetil.org/emacs-devel/875yvtbbn3.fsf@ericabrahamsen.net/

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>


  reply	other threads:[~2023-08-02  6:46 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-30 17:13 org-agenda queries for absent properties Jens Schmidt
2023-07-31  6:45 ` Ihor Radchenko
2023-08-01 18:50   ` Jens Schmidt
2023-08-02  6:45     ` Ihor Radchenko [this message]
2023-08-05 10:56       ` Jens Schmidt
2023-08-06  7:55         ` Ihor Radchenko
2023-08-06  9:19           ` Jens Schmidt
2023-08-06 14:42             ` Jens Schmidt
2023-08-07 11:53               ` Ihor Radchenko
2023-08-07 20:20                 ` Jens Schmidt
2023-08-08  7:04                   ` Ihor Radchenko

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://www.orgmode.org/

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

  git send-email \
    --in-reply-to=87wmyendr7.fsf@localhost \
    --to=yantar92@posteo.net \
    --cc=emacs-orgmode@gnu.org \
    --cc=jschmidt4gnu@vodafonemail.de \
    /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://git.savannah.gnu.org/cgit/emacs/org-mode.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).