This is an OmniFocus plug-in that is designed to assist with managing 'Work on...' tasks.
Please note that all scripts on my GitHub account (or shared elsewhere) are works in progress. If you encounter any issues or have any suggestions please let me know--and do please make sure you backup your database before running scripts from the internet!)
Refer to 'issues' for known issues and planned changes/enhancements.
Installation & Set-Up
- Download the latest release.
- Unzip the downloaded file.
- Move the
.omnifocusjsfile to your OmniFocus plug-in library folder (or open it to install).
This plug-in contains the following actions:
Add 'Work On...' Task
This action runs
addWorkOnTask below, creating a task similar to the following:
Complete 'Work On...' Task
This action runs the 'work on...' task as completed and runs
onComplete below. ('Stop working on' not pictured.)
This plug-in contains the following functions within the
addWorkOnTask (task: Task)
This adds a new repeating task as a child of the provided task, with the name "Work on:
The 'work on' task is set to repeat every 60 minutes.
onComplete (task: Task)
Asynchronous. This function is designed to be run on a previously-created 'work on' task. If a task that does not match the set format is passed as input, this function will exit without processing the task further.
It presents the user with the following options, of which more than one may be selected:
Defer until tomorrow. Defers the 'work on' task until 12am tomorrow
Defer until a future date. Defers the 'work on' task until a future date, specified in a second dialogue.
Schedule work tomorrow. (Only shown if my Scheduling plug-in is also installed and the task is not already scheduled for tomorrow.) This 'schedules' the next repetition of the 'work on' task for tomorrow.
Schedule work for a future date. (Only shown if my Scheduling plug-in is also installed) This prompts the user to select a date and 'schedules' the next repetition of the 'work on' task for that date.
Mark as complete. This marks the parent task/project as complete. (If my 'Custom Complete' plug-in is installed, the custom complete function is used.)
Stop working on. This marks the task complete then removes subsequent repetitions.