OO4 stores scripts in ~/Library/Application Scripts/com.omnigroup.OmniOutliner4. Keeping them there allows them to show up in View:Customize Toolbar and put icons for the scripts on your OO toolbar.
But the scripts do not show up in the Scripts applet in the Menu Bar. I have some scripts that I don’t use often enough to warrant taking u space on my OO toolbar, so I’d like to involve them by tapping the Scripts applet in the Menu Bar.
So how do I get those scripts to show up in the Menu bar’s Scripts applet?
Just figured it out. If I create an OmniOutliner folder in ~./Library/Scripts/Applications and put the script in there, it shows up in the Menu Bar’s Scripts applet when OmniOutliner is the active application.
But it seems to odd to have the scripts stirred in one place if you want it for the OO toolbar, and another place if you want it for the Menu Bar’s Script applet. Is there a reason for this? Any way to have them in one place and usable in both ways?
Here’s my guess as a user: With recent versions of OS X sandboxing applications for security purposes, Omni has built its apps to use approved locations (“containers”) that store things like preferences, sync documents, etc. Toolbar scripts are also stored here because they modify a particular application.
The OS X menu icon is activated by a preference box in Script Editor, Apple’s built-in scripting utility. It has access to non-sandboxed scripts (like ~/Library/Scripts) which can be used system-wide. This location is also visible from third-party apps like Alfred and LaunchBar.
I choose my script’s location based on whether I prefer to have the application visible when running the script. For instance, I use a script shared by another OF user that exports the visible tasks to OO. I have no need to run that script unless I am looking at OF, so I place that in the OF toolbar. Some search scripts, however, I want to access from elsewhere in the operating system, so those are placed in the system’s scripts folder that LaunchBar can access.
You can play with variations of this, of course. I have a lot of scripts on a macro palette in Keyboard Maestro that are only set to be available if OmniFocus is the front app. This is simply a variation of the toolbar approach.