I ran into a bug in which org-entry-get returns the wrong value. It brought up some other points.
1) org-entry-get of "TODO" returns the wrong value when there is a lower case version of a todo kw on a headline. Example: * neowhen I have "NEOWHEN" as a todo kw. What it returns is "neowhen". What I think it should return is the value for a blank state. Currently, this value is nil. 2) This is the 5th bug that I have reported of this type. In all 5 cases, the lower case version of a todo kw at the beginning of a headline caused incorrect behavior. This suggests separate matches. At least as a possibility. This in turn suggests to me that it might be possible to refactor org. By this I mean create a wrapper to do the matching and call that wrapper in all of those places. I wish I could help here, but I cannot. 3) For the user, I think it is more convenient to use org-entry-get for metadata than to parse manually. This is a useful function. 4) Perhaps Lisp keywords can be allowed instead of strings for speed. For example, (org-entry-get point-or-marker :todo) Instead of: (org-entry-get point-or-marker "TODO") I don't know if it would be significant. 5) This isn't directly related, but the value for a blank state is currently nil, not "". I have not thought about this deeply, but as nil is not a string, it is a special case (i.e. the only state that is not a string). In my experience, special cases in return values cause complicated code, because calling code needs to special-case the special case instead of merely composing, funcalling, or applying. Perhaps it's too late to change that. Or perhaps there is a special reason to use nil. But seems worth mentioning just in case it triggers an idea. Thanks. Samuel -- Q: How many CDC "scientists" does it take to change a lightbulb? A: You only think it's dark. [CDC has denied ME/CFS for 25 years] ================================================================= Retrovirus: http://www.wpinstitute.org/xmrv/xmrv_qa.html _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode