NaturallySpeaking is probably the market leader when it comes to continuous speech recognition. However if you wish to use the product in totally hands free manner then it does have some limitations. An out of a box NaturallySpeaking, even with the improved command control features avaliable within the new version, version 3.52, will need some tweaking if you wish to use the product totally hands free.
What follows is a list of macros, the tweaks, that will help you control your environment using the minimum number of keystrokes as possible.
I used three different methods for controlling the desktop.
"Bring up < application >"
This command allows you to start applications using your voice, for example, "Bring up Telnet " will start up the Telnet application.
IF (_arg1 = "My Documents") THEN AppBringUp "C:\My Documents" end if If (_arg1 = "Internet Explorer") THEN AppBringUp "C:\Program Files\Internet Explorer\IEXPLORE.EXE" END IF IF (_arg1 = "Telnet") THEN AppBringUp "C:\WINDOWS\TELNET.EXE" END IF IF (_arg1 = "Windows Explorer") THEN AppBringUp "C:\WINDOWS\EXPLORER.EXE" END IF IF (_arg1 = "Calculator") THEN AppBringUp "C:\Windows\calc" END IF IF (_arg1 = "Control Panel") THEN AppBringUp "C:\Windows\control.exe" END IF IF (_arg1 = "DragonDictate") THEN AppBringUp "C:\DDWin\voicebar.exe" END IF IF (_arg1 = "Notepad") THEN AppBringUp "C:\Windows\notepad" END IF
Don't forget you will need to define the application list with the following entries:
"Telnet, Internet Explorer, DragonDictate, Notepad, etc".
Adding lists is fairly self-explanatory, simply following the instructions when using the New Command Wizard.
"Switch to < application >"
This command will switch the focus to the application you specify. It is very similar to be "Bring up" command, if the application you specify is not already running then the application is started. I used both these commands because I find it more intuitive to use the "Bring up" command when I wish to startup an application and to use the "Switch To" command to swap between application that are already running.
This command may already exist, it depends on which version of NaturallySpeaking you are using. If it does you only need you add the extra applications you require.
if _arg1 = "NatSpeak" then AppBringUp "NatSpeak"
if _arg1 = "NaturallySpeaking" then AppBringUp "NatSpeak"
if _arg1 = "Next Window" then SendSystemKeys "{Shift+Alt+Tab}"
if _arg1 = "Previous Window" then SendSystemKeys "{Alt+Tab}"
if _arg1 = "Pine" then AppBringUp "Pine"
if _arg1 = "Telnet" then AppBringUp "Telnet"
if _arg1 = "Windows Explorer" then AppBringUp C:\WINDOWS\EXPLORER.EXE
"Bring Up Task <1to9>"
A macro which allows you to bring up applications by specifying the taskbar number associated with that particular application. This is the Windows 98 version.
SendSystemKeys "{Ctrl+Esc}"
Wait 50
SendSystemKeys "{Esc}"
SendKeys "{Ctrl+CapsLock}{Tab 2}"
SendKeys "{Right " + _arg1+ "} "
SendKeys "{Space}"
Once again a list defining the numbers 1 to 9 must be created.
So for example, if I was editing a file using Notepad and wished to switch to browsing the Web for a few moments, I would use following global NaturallySpeaking macro:
"Switch To Internet Explorer and DragonDictate "
SendsystemKeys "{F10}"
Wait 500
AppBringUp "C:\Program Files\Internet Explorer\IEXPLORE.EXE"
SendSystemKeys "{NumKey+}"
This macro would disabled the microphone within NaturallySpeaking. Fire up Internet Explorer. Switch control over to DragonDictate and select the Internet Explorer vocabulary within DragonDictate all on the fly.
Or, for a more usable command, which will allow you to control a number of applications in a similar manner:
"Switch To < Applications > and DragonDictate "
SendsystemKeys "{F10}"
Wait 500
if _arg1 = "Previous Window" then SendSystemKeys "{Alt+Tab}"
if _arg1 = "Pine" then AppBringUp "Pine"
if _arg1 ="Telnet" then AppBringUp "Telnet"
if _arg1 ="Internet Explorer" then AppBringUp "C:\Program Files\Internet Explorer\IEXPLORE.EXE"
Wait 500
SendSystemKeys "{NumKey+}"
Once again you have will need to create the applications list if it isn't already defined.
All the commands in this section assume you have F10 set up to be the toggle key for switching the microphone off/on within NaturallySpeaking and the + key on the keypad to toggle the microphone for DragonDictate.
One annoying problem with NaturallySpeaking is its ability to mis-recognise commands as natural next.
For example, you wish to fire off the command, "Switch to Telnet " and NaturallySpeaking types "Switch to Telnet" instead of jumping to the different window.
A way around this is to hold down control key down while saying the command, this will force NaturallySpeaking to only listen to commands and not its general vocabulary.
Unfortunately, there is one side effect to this technique. Sometimes holding down the control key will interfere with the key sequence you are sending to the system. To overcome this problem, pressed the control key down while saying the command but released it before you actually finish saying it. Sadly, this technique is not very "hands free ".
When composing large documents I find it far easier to use NaturallySpeaking's own editor. It's just that little bit quicker than using editors such at Word and also provides you with far greater correction/editing facilities than using Natural Text.
This is an extremely useful macro. It copies the content of NaturallySpeaking window into another application.
"Copy all to < application >"
SendKeys "{Ctrl+a}{Ctrl+x}"
if _arg1 = "Telnet" then AppBringUp "Telnet"
if _arg1 = "Notepad" then AppBringUp "Notepad"
SendKeys "{Alt+e}p{Enter}"
This section assume you understand how to edit the global.dvc file. If you do not I suggest you have a browse through Joel's Dragon NaturallySpeaking Unofficial Information Page.