Have Voiceover read out just paragraph or sentence under cursor

applescriptautomatorkeyboardmousevoiceover

I work with a disabled user who controls their iMac using keyboard and mouse input from their communication-aid. They have dyslexia and would like to use voiceover to read certain paragraphs or sentences that they are finding tricky.

I'd a like a global method whereby just the paragraph or sentence under the cursor can be readout. Enabling voiceover for everything is too verbose and unnecessary.

Best Answer

While there is a contextual menu for Speech » Start speaking that will speak the selected text, it requires navigating several menus. If you want to be able to speak the selection without navigating menus, create an automator service that receives text in any application. Give it a single action: Run shell script. The shell script is utterly simple: /usr/bin/say (it will take the argument of what to say from stdin, which in this case will be the selected text). Save the service (I called it "Say paragraph").

Then, in System Preferences, you can assign this action a keyboard shortcut (I gave it the keystroke ControlShift1). So triple click, then ControlShift1 and it speaks what's under the mouse pointer.

enter image description here