emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Hiding "future" tasks in tags-todo agenda view


From: Carsten Dominik
Subject: Re: [O] Hiding "future" tasks in tags-todo agenda view
Date: Sat, 15 Oct 2011 15:08:17 +0200

On 14.10.2011, at 22:09, Neilen Marais wrote:

> Hi,
> 
> I've recently switched from using tracks (http://getontracks.org/) to
> org mode for GTD task management. One neat tracks feature that I am
> struggling to reproduce is the "show task from date". If you add a
> task with no date set, they show up immediately in the context next
> action lists, but if you have a "show from" date in the future, it
> only shows the task from that date onwards.
> 
> Scheduling timestamps (http://orgmode.org/worg/org-faq.html#sec-16-9)
> seem like they should do exactly that, but they don't seem to work in
> my custom org-agenda that I use to show only items with a NEXT todo
> state and an assigned context. However, it shows all items
> irrespective of the scheduling setting. 
> 
> (setq org-agenda-custom-commands
>      '(
>       ("c" "Context Next Tasks" 
>        tags-todo (mapconcat 'car my-org-context-tag-alist "|")
>        ((org-agenda-skip-function '(org-agenda-skip-entry-if 
>                                     'nottodo '("NEXT")))
>         (org-agenda-sorting-strategy '(tag-up))
>         (org-agenda-overriding-header "Context Next Tasks")
>         ))
> ))
> 
> How can I make this custom agenda skip items that are scheduled in the
> future, while also keeping unscheduled tasks? I have also tried adding 
>         (org-agenda-entry-types '(:scheduled))
> but that did not seem to make any difference.

Hi Neilen,

this was a pretty good attempt for someone who says he is new to org!

Scheduling normally has the purpose to make an item show up in your daily
agenda on a specified date.  But you can use is also to hide items scheduled
in the future from the task list.  Here is how:

(setq org-agenda-custom-commands
     '(
        ("c" "Context Next Tasks" 
         tags-todo 
"TODO=\"NEXT\"+SCHEDULED=\"\"|TODO=\"NEXT\"+SCHEDULED<=\"<today>\""
         ((org-agenda-sorting-strategy '(tag-up))
          (org-agenda-overriding-header "Context Next Tasks")
          ))))

You can use a regexp match TODO={^\\(NEXT\\|...\\|...\\)$} to check for several
TODO keywords as once.

Another, more compact possibility that is also more easily extended to your
longer list of tasks in my-org-context-tags-alist is:

(setq org-agenda-custom-commands
     '(
        ("c" "Context Next Tasks" 
         tags-todo "SCHEDULED=\"\"|SCHEDULED<=\"<today>\"/NEXT"
         ((org-agenda-sorting-strategy '(tag-up))
          (org-agenda-overriding-header "Context Next Tasks")
          ))))

Let me know if I need to further explain why these works - but I
guess you can figure it out?

Cheers

- Carsten





reply via email to

[Prev in Thread] Current Thread [Next in Thread]