Using An Elgato Stream Deck With OmniFocus
I bought a 32-key Elgato Stream Deck because I was getting tired of remembering (and running out) of hotkey combinations. And at the time, I was ramping up my streaming game and wanted to add a little convenience to my life. What I didn't expect was the ridiculous amount of power and macro-pad like the Stream Deck enables.
I originally set up the Deck with a bank of simple launcher keys for opening applications. And that works fine. But I quickly discovered the concept of profiles and the process of assigning a profile to an application.
Here's what that means: you can create an entire profile (a screen of buttons) for an application that automatically opens when that application is active. So when I open Brave, the Stream Deck switches to a profile of Brave buttons I have programmed. When I open Resolve for editing, it shows me buttons for video work in Resolve. And when I open OmniFocus, it shows me a bunch of hotkeys I programmed for OmniFocus.
Ignore the four buttons on the right. Those are shortcuts I use to get to certain profiles while streaming.
Starting at the top, I have two Perspective keys. One takes me to my Projects view and the other takes me to my Kanban view. That's it. Yes, I could put these in the sidebar of OmniFocus, but for some reason, it's simply faster to have them here.
The remaining five buttons on the top row run Omni Automation scripts for managing where my projects live in the Kanban cycle. Those scripts (and the corresponding Stream Deck buttons) move the projects from one state to another.
"To Do" adds the project to the Kanban board as a potential project by adding a to-do
tag.
"In Prog" removes any other Kanban tag and adds in-progress
.
"Waiting" removes any other Kanban tag and adds waiting
.
"Done" removes any other Kanban tag and adds done
.
"Clear" any Kanban tag, which means I've removed it from the Kanban flow entirely.
One note here, this entire process is done on a project level and not a task level. It's a set of scripts I altered from the Omni Automation site. If you're interested in these scripts, you can pick them up here.
To set these up is a bit of a pain. Technically, there's a way to run these scripts from a url-callback scheme. But I've never succeeded in making it work.
Instead, I cheated. I opened up my keyboard settings and added hotkeys for each of the scripts I wanted on the Stream Deck.
Then, in the Stream Deck settings, I added them as a hotkey.
On the second row is a simple one called "View Project." Because I'm working primarily from this Kanban view in OmniFocus, I regularly want to go from the Kanban Perspective to the project itself. The nice part here is that there's already a hotkey to do this: ⌥ + ⌘ + R
Last row! The first three work the same as the scripts on the top row. They are hotkeys in the Keyboard settings and then assigned in the Stream Deck.
"Template" runs a project templating script that I use for every project I create in OmniFocus.
"Sort" is a script that sorts projects by name. You can find it here.
"Update Reviews" is one of the more popular scripts I've created, so I need it here as well. You can read up on it here.
The last button I have is "Copy to Obsidian." This is a multi-action key I set up to copy the title and link of the selected project. It then opens Obsidian so I can copy both of those to a new note and get to work!
I know there is a ton more I could do here, but these simple keys make my life so much better overall. If you have a chance to pick up a Stream Deck, I highly recommend it.