[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: org-agenda queries for absent properties
From: |
Ihor Radchenko |
Subject: |
Re: org-agenda queries for absent properties |
Date: |
Mon, 31 Jul 2023 06:45:43 +0000 |
Jens Schmidt <jschmidt4gnu@vodafonemail.de> writes:
> The following was initially meant as bug report until I understood that
> it's actually some sort of feature ...
>
> since the absent property "patchday" on the "relax" todo entry is
> defaulted to value zero, obviously.
This is a side effect of handling comparison operators in tag matcher.
The property value is processed as (string-to-number (or value "")). And
since (string-to-number "") => 0, you get what you get.
This code is out there since the beginning of git history.
> So I would like to have something easier to type (and remember! why not
> "!=" or "/="?) then
Not "!=" and "/=" is because parsing of match string is too dumb. See
`org-make-tags-matcher'.
> patchday<>0&patchday<=202305
>
> How about starred agenda property operators that match only if the
> operand property is actually present, which would result in this query:
>
> patchday<=*202305
>
> Section <info:org#Matching tags and properties> does not seem to provide
> any information on "definedness" expressions for properties.
If you are up to a job of adding this to `org-make-tags-matcher' and not
breaking things, you can try. But we should really provide more readable
match syntax, similar to org-ql; sooner or later.
--
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>