Jens Schmidt <jschmidt4...@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>