*Addendum (2017-12-06): Brandon Pittman has since come up with an Applescript method of doing the sorting described in this post.
We may find ourselves with a large number of projects in one folder. As an example, I have a sizable number of clients. Each client has their own project. These projects then reside in one “Current Clients” folder.
When creating a new client project, often through a template mechanism (to be discussed in another post), I now have a new project to add to the mix. However, at several scores of clients, the whole folder can eventually become a mess. There is no order:

An unordered list of projects, gradually created over time.
While I can always search for a project using the Quick Open feature (Command-o), I’d also there to be some order.
To re-order on a one time basis, we can use the “Sort Once” feature. To sort once,
- Select a series of projects (multi-select using Shift or Command):

A selection of all projects in a particular folder
- Use Menu > Organize > Sort Once > By Name:

Menu command to have OmniFocus sort projects alphabetically
Everything is now nicely alphabetized:

An organized list of projects
You’ll notice that there are several options available, not just “By Name”. The only other one that I use regularly is “By Status” though I can easily imagine the others working in other workflows.
In fact, I use these two so often, e.g. every time I get a new client, that I’ve added Keyboard Maestro key commands for them:
- Menu > Organize > Sort Once > By Name (Option-n)
- Menu > Organize > Sort Once > By Status (Option-s)
Organize by status lines up your active projects and then your on hold projects. That way, if you can sort a mix of one and the other:

Before and after of sorting projects by status places Active above On Hold Projects
Occasionally, I will follow one sort command with the other, (Option-n) then (Option-s). Everything is quickly organized quite nicely.
Also, the same sorting command works for contexts, too. As I have a context for each client, the same issue appears.
Setup Keyboard Maestro for OmniFocus
Create a Folder for OmniFocus Key Commands
If you are interested in creating the same setup in Keyboard Maestro, we can use the same procedure I outlined in this post.
If you don’t already have a group dedicated to OmniFocus in Keyboard Maestro,
- Create a Group for OmniFocus:

Create a folder to dedicate to OmniFocus macros
- Title it:

Title for macro folder
- Select “Available in all applications” and change it to “Available in these applications”.
- Select the green + button and select OmniFocus:

Set macros only for OmniFocus
You now have a folder that will let you make Keyboard Maestro macros specific to OmniFocus.
Create a Sort by Status Command
At this point,
- Create a new macro:

Use the middle bottom plus button to begin creating a macro.
- Title the macro:

Assignt the macro a title
- Select New Trigger > Hot Key Trigger:

Assign a hot key trigger – here I’m choosing Option-s
- Assign a key command (e.g. Option-s).
- Open the Actions list by selecting the plus button:
- Find and select “Select or Show a Menu Item”. Here I used the search window to do so:

Find “Select or Show a Menu Item”
- In the action, select the Menu prompt:

Use the menu command to find the desired menu option.
- Find and select the menu command for assignment:

Navigate several windows over to find the desired command.
You’re now good to go:

Completed macro in Keyboard Maestro
As a side note, I use the “Select or Show a Menu Item” function of Keyboard Maestro the most. Quite likely, there’s a ton of functionality that I’m missing.
In any case, you now have a quick way to sort your projects.
Trackbacks/Pingbacks