Archives for category: OmniFocus

Here is an AppleScript that schedules the selected OmniFocus tasks for the coming weekend. If a weekend (as defined by you) is in progress, items will be scheduled for the current weekend.

In concept, the script really lets you to set start/due dates based on a relative weekly schedule. Simple modifications include:

  • Changing your “weekend” to a different day/time range is as simple as modifying the settings at the top of the script. You could easily make a copy for “this week”, “next week”, “next Friday”, “next Thursday from 4:00-6:00″, etc.
  • Un-commenting one line will bump it forward a week (think: “next weekend”).

Download it here

For OmniFocus users: here’s a script to clear the start and due dates of all selected tasks.

Download it here

Last updated: 15 June 2010

I’ve added two more scripts to my OmniFocus repertoire: Today and Tomorrow.

As one might expect, Today sets the due date of selected item(s) to the current date, and Tomorrow sets the due date to the next date.

Why might you need this? A few days’ lapse are enough to make a deadline-sorted view worthless, especially when some of these deadlines are hard and others fall into the “optionally, I’d love to get this done today” category. My Defer script is one method to deal with these items: defer them by a day, a week, etc. But sometimes you just need to set these items to today. Or tomorrow.

As with Defer, these scripts work with any number of selected tasks. For each selected item:

  • If there’s no existing due date, sets due date to today (5pm by default, configurable in script)
  • If there’s an existing due date, sets due date to today at the original due time
  • If there’s an original start AND due date, advances the start date by same # of days as due date has to move (this is to respect parameters of repeating actions)
  • Ignores start date if there’s no due date already assigned to a task

Putting it all together

I’ve set my keyboard shortcuts for Defer, Snooze, Today, Tomorrow, and This Weekend to ctrl-d, ctrl-z, ctrl-t, ctrl-y, and ctrl-w, respectively (using FastScripts), so shuffling tasks couldn’t be easier. Use cases:

Catching up after holiday: Select all overdue tasks, hit ctrl-t to bring them current. Then snooze or defer the ones you won’t get to today.

Planning today’s tasks: Select your tasks and ctrl-t them into the day’s queue. Planning tomorrow? Use ctrl-y instead.

Download them here


Thanks to Seth Landsman for his role in inspiring my Today script. His version is very similar but doesn’t quite match the defer logic I need.

Usage note: some items inherit due dates from their parent task or project, but don’t actually have due dates themselves. This script ignores those items.

Last Updated: 2010-06-15

Here’s an AppleScript that “snoozes” selected OmniFocus items by setting their start date to a future* value. These items will then be unavailable (and out of sight in views showing “available” items) until the snoozed start date.

Usage:

  1. Run the script with one or more items selected in OmniFocus

  2. Choose how long you would like to snooze the items (in # of days)

The script will then set the start date of selected items to the current date + the number of days selected in step 2. For example, snoozing with the default value of 1 day will set the tasks to begin at 12:00 AM tomorrow.

Finally, if you have Growl installed, the script will display a Growl confirmation.

I highly recommend initiating the script from a third-party launcher such as FastScripts or Quicksilver. This will prevent delays within the OmniFocus application due to Growl bugs.)

Download it here.


* This doesn’t have to be a future value. Choosing 0 as the snooze value will set the start date to midnight today; choosing -1 will set the start date to midnight yesterday.

Updated 6/15/10: minor edit to improve efficiency

The updated Defer script for OmniFocus is ready. Changes include:

  • Bug fixes to make the script more reliable, particularly when deferring multiple items.

    • For most of these I’m indebted to Curt Clifton, who made the most critical bug fixes on the OmniFocus forum. (If you use OmniFocus, his scripts and tools are invaluable; be sure visit his site.)
  • The default action now defers both start and due dates.

  • Notifications code has been rewritten to make the script friendly for machines without Growl installed.

    • While testing, I discovered that GrowlHelperApp crashes on nearly 10% of notification calls. To work around this, the script now checks to see if GrowlHelperApp is running; if not, the script launches it. If Growl is not installed or can’t launch, the script displays a generic notification of the defer results.

If you experience delays with the script, it’s almost certainly an issue with Growl, not OmniFocus. This is much less of an issue if you launch the script via a third-party utility like FastScripts, because any Growl-related delays will be absorbed by the script launcher, not OmniFocus. If you primarily invoke the Defer script from your OmniFocus toolbar, you can always disable alerts to speed things up. To do this, simply open the script in Script Editor and change property showAlert to false.

Download it here.

Leave it to the OmniGroup to help you stay productive — even when you can’t choose what to tackle next.

The OmniFocus Dashboard widget (”OmniFidget”), released today, does just that. Tell it what contexts you’re in:

OmniFidget 1

And it tells you what to do:

OmniFidget 2

Clicking the task title takes you to the task’s project in OmniFocus. Clicking “No” skips to the next task (but who really wants to disappoint the OmniFidget)?

Get yours here.

The long-awaited OmniFocus iPhone app is officially announced. Features to include:

  • Location-aware (knows when you’re near the hardware store to pick up that drill bit)
  • Live automatic sync over the network (EDGE or WiFi via .Mac or WebDAV, according to the site, though they likely mean EDGE, 3G, or WiFi, via MobileMe or WebDAV)
OmniFocus for iPhone

Product page here.

It’s the best of all possible worlds! Now you can brainstorm in XMind and import directly into OmniFocus via Udo Gaetke’s clever AppleScript. The script creates a project from your map’s root node and actions (or subactions) from the other nodes.

Thus, this:

XMind plan

Becomes this:

OmniFocus Plan
Via Skitch

Get the script here (forums.omnigroup.com)

Notes:

  • Although XMind isn’t scriptable, the XML file format is open; his script digs into the XML structure to pull relevant data

  • The script contains a property called import_folder. You’ll need to create a folder in OmniFocus with this name before running

  • The script contains a “rm -f” operation. This deletes a temporary XML file created by the script. You may want to peruse the script yourself before running

OmniFocus rocks. I can’t really imagine managing myself personally or professionally without this tool. Nevertheless, despite thousands of hours of development and beta testing, it has its share of quirks. Notably, in my work I have a few daily-type tasks I set to repeat every day. Unfortunately, there’s no “workday” option in the repeat choices, so every weekend I end up with a Saturday and Sunday repetition. I could either:

  • Mark them complete (ignoring the fact that I’ve just claimed to have done nonexistent work);
  • Mark them complete and delete the “done” items before they disappear (solving the first issue)
  • Change the start/due dates in the Inspector (cumbersome)
AppleScript to the rescue.

My Defer script allows you to defer, or ’snooze’, selected projects or tasks by a given number of days. (Disclaimer for GTD pedants: my use of the word “defer” here is sanctioned by the New Oxford American Dictionary, not David Allen.)

Usage: Select the task(s) and/or project(s) you wish to defer. Invoke the script from the toolbar or script menu:

OFDS_1

Enter the number of days to defer the items in the resulting dialog box and select “OK” (default is 1, so feel free to just hit Return to ’snooze for a day’).

OFDS_2

The script will then prompt you whether to defer both start and end dates of the items. “Due [date] only” is the default option, so again, feel free to hit return to snooze your due date only.

OFDS_3

Finally: a Growl notification to signify your success. (If desired, you can use a standard OS alert dialog or no alert at all. See the script for details.)

OFDS_4

Download here.

19 Feb 2009: version 0.2 is now available. Release notes here. Download link is for current version.

FireStats icon Powered by FireStats