From mboxrd@z Thu Jan 1 00:00:00 1970 From: Samuel Wales Subject: org-refile-targets multiple conditions Date: Thu, 16 Apr 2009 15:12:38 -0700 Message-ID: <20524da70904161512r7c248a93q9de11b02274a62bc@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LuZpQ-0002zC-Ov for emacs-orgmode@gnu.org; Thu, 16 Apr 2009 18:13:04 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LuZpL-0002qw-LY for emacs-orgmode@gnu.org; Thu, 16 Apr 2009 18:13:03 -0400 Received: from [199.232.76.173] (port=60529 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LuZpL-0002qi-IA for emacs-orgmode@gnu.org; Thu, 16 Apr 2009 18:12:59 -0400 Received: from rv-out-0708.google.com ([209.85.198.242]:59635) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LuZpL-0006bj-AQ for emacs-orgmode@gnu.org; Thu, 16 Apr 2009 18:12:59 -0400 Received: by rv-out-0708.google.com with SMTP id f25so684355rvb.6 for ; Thu, 16 Apr 2009 15:12:58 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org I want to eliminate DONE and similar states from the list of refile targets. The benefits would be: 1) The set of candidates is reduced, requiring fewer keystrokes to select a target. 2) The possibility of misfiling into a task that will be archived is reduced. 3) The list length is reduced, helping to work around some of the speed problems that I have been experiencing with ido. This is possibly at the cost of slower creation of the initial list, however. The documentation for org-refile-targets says: > - a cons cell (:todo . "KEYWORD") to identify refile > targets by todo keyword. In principle I might get the desired behavior by including all kw /except/ doneish ones, and also including the empty string. But if I did so, I don't think it would work, because I already set (:maxlevel . 5). I did not find a way to specify that I want non-doneish entries (including blank) that are below level 6. Would it be feasible to allow AND and NOT? (setq org-refile-targets `((,(file-expand-wildcards (substitute-in-file-name "$dorg/*.org")) . (and (:maxlevel . 5) (not (:todo . "DONE")) (not (:todo . "MOST")) (not (:todo . "MOOT")) (not (:todo . "DUPLICATE"))))))[fn:13] Or is there a way that I can do this with existing org? Thanks. [fn:13] Or (not (todo "DONE")) or (not (or (todo "DONE") ...). -- Myalgic encephalomyelitis denialism is causing death and severe suffering worse than MS. Greed is corrupting science into foul nonsense. Anybody can get the disease at any time permanently. Do science and justice matter to you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm