I automate creating a lot of projects for various things, and they have different start dates. Selecting multiple projects with various review dates makes the review of every option disappear. I do not see any way to AppleScript this, nor have I found any plug-ins that allow me to set the Review amount to the same values for multiple selected projects.
This script allows me to just push all the selected projects to be reviewed again in 40 years. I set it to 99 initially but then it looped around and made it look like it was a year old since it doesnât show a four digit year date.
on run
tell application "OmniFocus"
tell front document
tell document window 1
set selectedTrees to selected trees of sidebar
repeat with aTree in selectedTrees
if class of value of aTree is project then
my processProject(aTree)
end if
end repeat
end tell
end tell
end tell
end run
on processProject(theProjectAsTree)
using terms from application "OmniFocus"
set aProject to value of theProjectAsTree
set lastChangedDate to modification date of aProject
set next review date of aProject to lastChangedDate + (40 * 365.25 * 24 * 60 * 60) --Change 40 in this to the amount of years you would like to review the project again
end using terms from
end processProject
For anyone using Keyboard Maestro here is a set of 6 macros that moves the next review for OmniFocus selected projects.
@skillet These plugins are not published anywhere.
Some time ago I got annoyed by OF to tell me to review my projects e.g. Saturday. But Saturday I went hiking with my family. Still projects were on Review. Then there were projects when the review cycle did not match the actual needs. Thus, I said to myself: I decide when I do a (GTD) weekly review.
This lead me to the first plugin: EditAllReviewDateCycles
Which sets all review cycles to 12 years (nice number) and a review date of somewhere in 2099.
With that I was able to have no project with a review date not to my needs.
Then I started to really differentiate between active projects and on hold projects. So I put fewer projects to status active and more projects on hold. Just had too many active topics. In this case the need arose to be able to set the review date of active projects independent to on hold projects which I review not so often. EditReviewDateActive AND EditReviewDateOnHold were born.
Because I assign all of my projects to their respective area of focus (GTD) I use folders as areas of focus. However, I needed a location for single next actions as well. So each area of focus folder got a single action project for such single next actions. Thatâs when EditReviewDateSingleAction was born. When I do my GTD weekly review I check for single next actions purely when Iâm looking at my next action lists. If a next action should become a someday/maybe due to too much to do, then I do that there. But I can control their single action projectâs review independently from the others.
Usually, at the end of the day I should review all the non single action projects which I have moved something in. With that I can check if based on what Iâve checked off or changed I need to update the project or decide upon a new next action for the project or make a someday/maybe action to an active next action. This is where EditReviewDateSinceDate comes in. I run the plugin, it asks me for a date/time and then puts all the non single action projects in which I have modified anything to review. Then at the end of the day I have just a few projects to update and my GTD weekly review goes much quicker.
These days I donât use this so often. Its disadvantage is I have to remember when I did the last of such reviews.
Thatâs it so far. If youâd need something like this, then please get specific on what you need. I made these plugins in a way that they do what I need and maybe some of them need customising in order to be useful to your needs.
PS: The plugin names mentioned are just the file names.
Thanks for that explanation that makes a lot of sense and if you are able to post those plug-ins here that would be great and I can tweak them as needed.
I have evolved quite a bit with GTD and OmniFocus and there are things about GTD that I do that is not part of that method. David Allen doesnât seem to be a fan of prioritizing tasks or actions and just preferes categories (now Tags in OmniFocus) I run AppleScripts on tags and use perspectives to filter those that way I can keep things in a project folder and single actions projects.
The review which David is huge about and he even struggles with is very difficult like you said when you get too many projects. I tried to keep only my active projects under 20 max and most have become someday/maybeâs as reference with ideas kept in Scrivener or MWeb Pro for fast Markdown and syncablity between macOS and iOS.
I also have a Keyboard Maestro macro that I run that creates a project based on dates so I get the benefit of quick things like TaskPaper is great at and can drop thoughts into and just put the defer date for the project as the date of the project. I donât know how to do that with a plug-in but I would imagine there is a way to do that.
I can then with the new perspective options in OmniFocus 4.2 just go and view based on Monday - Sunday or do a quick open and type âdtâ to have it auto expand to todayâs date 2024-04-18 can find the one offse really fast. With that and a perspective of what is availble today I am not dependent on always defering things and I can quickly see where to drag quick one offs. Not very GTD but it has removed a lot of friction points for me in OmniFocus and GTD.