July 03, 2014

Automation in Accordance 10.4.3

Accordance 10.4.3 has added new features that have opened up new avenues for automation. These new capabilities are the primary feature enhancement for this point upgrade.  I am delighted in their efforts.

The new features are:
1. A URI protocol that allows creators to embed links into web pages/pdfs/emails/other documents that will open Accordance to the specified text or tool, even searching the specified field for the specified text. This link will open your default text module and search for "Joseph": accord://search/;Words?Joseph

2. New Services that allow for
  • selecting text in some other document and searching for and viewing it in Accordance
  • inserting full text into your document
3. Two new Automator Actions that allow any number of automation applications (of which the above mentioned Services are actually just beginning examples of what can be created in Automator).

Since I have Applescripts and Services and Actions etc. floating around out there that have tried to fill the gap to date, I thought it would be helpful to update users on the new situation regarding automation.

I have for years produced the Accordance Script Library for automating Accordance. When users drug this into their ~/Library/Scripts folder, they could then use other scripts/services/actions  created by me and other industrious users for doing the same kinds of things the new Services make possible.

My Accordance Script Library pulled text out of Accordance invisibly using Applescript APIs (hooks that allow you to programmatically get data from a process). This capability will not change.
The Library also allowed for bringing Accordance to the front, opening a Tool of choice and running a search, but it accomplished all this through [quite] clever uses of User Interface Scripting—simulating menu selections, key presses and mouse-clicks through scripts. It was always clunky. The new URI protocols now accomplishes much of the same thing and makes it much more robust. A short Applescript can use the URI protocol to interact with Accordance, using the 'open location' command:

    open location "accord://search/;Words?Joseph"

In time, I will be rewriting the Accordance Script Library to use the URI protocols where appropriate to interact with Accordance.

One note, however, is that my previous Accordance Services are now obsolete. I will this weekend be removing them from my Downloads section, and join others in supporting Accordance's new options using Automator to create the Services you might like.

No comments: