If you’re a Mac user who’s also got an iPhone or iPad, you may be a bit frustrated that Apple has not yet brought the powerful Siri speech-activated personal assistant to its non-mobile platforms.
It’s especially frustrating when you see Windows 10 users showing off what Cortana can do. Windows users shouldn’t be able to show off to Mac users — that’s just wrong.
Thankfully, El Capitan has built upon the already improved speech-recognition capabilities of Yosemite, so the day when proper Siri-like functionality arrives on Mac seems just that little bit closer with a tweak or two.
The first thing you’ll want to do is open System Preferences and click on the Dictation & Speech pane. Next, click the radio button to turn Dictation on, and then click the box for Use Enhanced Dictation.
The latter will initiate a download of various stuff that the Mac needs in order to be able to process speech recognition locally rather than seeing everything out over the network for processing to be done on Apple’s servers the way it is with Siri.
Since your Mac has both the capacity and the processing grunt to do this processing itself (unlike your iPhone, which does not) you might as well use it.
If you’re a Star Trek fan who does not mind being terminally daggy, you may like to keep it that way. The downside is that “computer” is a fairly common word and the kind of thing you may find yourself saying without intending for your Mac to spring to attention and attempt to follow whatever command comes after.
(If you’ve ever had your iPhone or iPad go stupid on you because it heard something that sounded a bit like “Hey Siri” you’ll understand what we’re getting at here.)
For that reason, you should change this to something a little less common and unlikely to be said accidentally. We’ve used “O Capitan My Capitan” because we’re Dead Poets Society fans who don’t mind being terminally daggy.
Next, click on “Dictation Commands” to see a list of the various commands you can use speech to activate. A large range of them are built in, covering functionality from file handling to navigating the web to selecting and manipulating content within applications.
You can also use dictation to search Spotlight and, thanks to El Capitan’s enhanced natural-language search capabilities in Spotlight, this works rather nicely. For example, say “O Capitan My Capitan, search Spotlight for files created in the last week” and it will parse that correctly.
If you get too complex — “O Capitan My Capitan, search Spotlight for files created two weeks ago that are over 100MB” — it can get a little bit lost. This isn’t Siri, remember. Not yet.
The cool thing that you can do with El Capitan’s dictation features that Siri can’t match is create your own commands. There are two ways to do this.
The easiest thing to do is to go back to System Preferences > Accessibility and click on “Dictation Commands” again.
In the lower-left corner you’ll see a checkbox labelled “Enable advanced commands” — click on that, and another button will appear with + and – symbols. Basically, now you can add or delete commands to the list on inbuilt ones.
Click on the + symbol, and a dialog appears on the right-hand side, where you can define a phrase to speak, identify the scope of the command (which applications it affects) and define its action from a pre-set list.
This is mainly useful if you want custom speech commands for particular keyboard shortcuts or menu items you use often that are not already defined as included commands.
However, you may also notice that at the bottom of the Perform drop-down menu is the option to “Run Workflow”. This is where customisable speech recognition really comes into its own — you can define speech commands to run any workflows you’ve created in Automator, regardless of what type of workflow they happen to be.
For instance, if you’ve created the standalone workflow to toggle visibility of files on and off which we’ve spoken about previously, you can activate that workflow using a speech command.
Which brings us to the next way to create custom speech commands — to build them in Automator.
Open Automator, and from the File menu select New.… From the project gallery, choose Dictation Command. Next, create the workflow you want by dragging items from the Library on the left into the workflow window on the right.
For example, click on Utilities and then find the command to “Quit All Applications”. Drag that over to the workflow window, and in the dialog box at the top, type the text you want to say to activate this workflow — something like “Quit everything” should do. Tick the box to enable the command.
As you can see, there are some other options. Decide whether you want to have the option to save changes to open documents before quitting applications (you probably should), and you can also exclude certain applications from the command if you want — for instance, if you want to be able to quit everything but keep your Mail client open.
When you have the settings as you want them, save the workflow (it’s probably wise to give it the same name as the command you want to say to activate it) and Quit Automator. If you go back to the list of Dictation Commands, you’ll find your new workflow there, ready to run at your command.