Screen Reader Friendly “Find” Commands for Microsoft Word
Presented at the SIG 11 (Computer Applications) Show-and-Tell at RESNA 2008.
Client
The client is a trial lawyer who is blind. His primary access technology is JAWS. He prepares notes in Microsoft Word, and refers to them frequently while in court. (He wears a headset to avoid disturbing the court.)
His preferred way to navigate through trial notes is to use the "Find" command. To refresh his memory or add comments about a particular subject, he searches for a word or phrase, and uses Word and JAWS navigation commands to zero in on the relevant part of the document.
Problems with built-in Find commands
The "Find" command in Microsoft Word is not particularly screen reader friendly:
- After initiating a search, the "Find and Replace" dialog box must be closed before continuing.
- After closing the "Find and Replace" dialog, the found string is selected. JAWS does not report that it is selected, and on occasion, the client starts typing and inadvertently deletes the selection.
- Changing the search direction is awkward: Press Ctrl+F, type a search string, tab to the "More..." button (first time only), tab to the "Search" drop-down list, change the option to either Down or Up, and press Enter.
- The default hotkey for "Repeat Find," Shift+F4, is cumbersome. To locate F4, the client lifts his left hand from the keyboard, landmarks on Esc, and counts four keys to the right. In addition, he must ensure he is not pressing Ctrl or Alt instead of Shift. (Ctrl+F4 closes the document, Alt+F4 exits Microsoft Word.)
Solution
I used Visual Basic For Applications (VBA), the built-in macro language in Microsoft Word, to develop three new find commands: one that searches forward, one that searches backward, and one that repeats the previous search.
I mapped "Find back" to Ctrl+comma, "Find forward" to Ctrl+period, and "Find again" to Ctrl+/. The three keys are side-by-side and easily located without lifting the hands from the keyboard.
JAWS automatically reads the search direction (from the title bar) when initiating a search. After entering a string and pressing Enter, the dialog box closes. If the string is found, it is not selected. Instead, the cursor is at the end of the found text when searching forward, or at the beginning when searching backward.
The client says of the new commands: "I now use three customized macros... that let me zero in on information in half the time using a quarter of the keystrokes."
Time to develop
About 2.5 hours.