Allow sparse trees with property values containing a slash

* lisp/org.el (org-make-tags-matcher): Do not interpret / in property
value as starter of TODO match.
This commit is contained in:
Carsten Dominik 2013-09-08 08:56:17 +02:00
parent b64626ecf4
commit 3e99e9298c
1 changed files with 11 additions and 2 deletions

View File

@ -14050,10 +14050,19 @@ See also `org-scan-tags'.
minus tag mm
tagsmatch todomatch tagsmatcher todomatcher kwd matcher
orterms term orlist re-p str-p level-p level-op time-p
prop-p pn pv po gv rest)
prop-p pn pv po gv rest (start 0) (ss 0))
;; Expand group tags
(setq match (org-tags-expand match))
(if (string-match "/+" match)
;; Check if there is a TODO part of this match, which would be the
;; part after a "/". TO make sure that this slash is not part of
;; a property value to be matched against, we also check that there
;; is no " after that slash.
;; First, find the last slash
(while (string-match "/+" match ss)
(setq start (match-beginning 0) ss (match-end 0)))
(if (and (string-match "/+" match start)
(not (save-match-data (string-match "\"" match start))))
;; match contains also a todo-matching request
(progn
(setq tagsmatch (substring match 0 (match-beginning 0))