|
From: | Carsten Dominik |
Subject: | Re: [Orgmode] org-agenda-filter-by-tag doesn't work with custom effort property |
Date: | Wed, 25 Feb 2009 19:26:01 +0100 |
On Feb 25, 2009, at 6:32 PM, Daniel Clemente wrote:
El dc, feb 25 2009, Carsten Dominik va escriure:On Feb 24, 2009, at 3:52 PM, Daniel Clemente wrote:Hi, I would like to contribute 1 byte to org-mode; it's an "a": --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -4407,7 +4407,7 @@ to switch to narrowing." (lambda (x) (if (cdr x) (char-to-string (cdr x)) "")) alist "")) (efforts (org-split-string - (or (cdr (assoc (concat org-effort-property "_ALL") + (or (cadr (assoc (concat org-effort-property "_ALL") org-global-properties)) "0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00"I don't think this is correct. What are the symptoms of the problem you encounter?Before describing the problem: the (or ) was taking either the (cdr ) or "0 0:10…". But cdr always return a list (not a string), so if the cdr is used, the result will be a list, and this is wrong because it org-split-string expects a string, not a list.
Hi Daniel,the cdr returns the cdr of a list. That is ofte a list, but it cal also be an atom.
For example: (cdr '(a . b)) => a (cdr '(a b c d)) => (b c d) The global property list is constructed like this '((key1 . value1) (key2 . value2)) so (cdr (assoc key1 list)) returns value1, a string. Maybe you have an incorrect definition of `org-global-properties'. I suspect that you did not make the value with customize, but by hand and that you wrote (setq org-global-properties '(("EFFORT_ALL "0 1:00...."))) It should be (setq org-global-properties '(("EFFORT_ALL . "0 1:00...."))) HTH - Carsten
The problem can be reproduced with: 1. C-c a 2. a 3. / I get:Debugger entered--Lisp error: (wrong-type-argument stringp ("0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 12:00 18:00 24:00 30:00")) string-match("[ \f \n…]+" ("0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 12:00 18:00 24:00 30:00") 0) org-split-string(("0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 12:00 18:00 24:00 30:00"))org-agenda-filter-by-tag(nil) call-interactively(org-agenda-filter-by-tag nil nil) I'm using:(add-to-list 'org-global-properties '("Effort_ALL" "0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 12:00 18:00 24:00 30:00"))org-mode 6.21b (from Emacs from Bazaar of 24-2-2009) -- Daniel
[Prev in Thread] | Current Thread | [Next in Thread] |