NatSpeak: 7 of 8
NatSpeak: New Step 7 of 8
NatSpeak: Step 7 of 8 and NatSpeak: List -- Macro Control


NatSpeak: Step 7 of 8
Note: If you are in step 7 of 8 and the program will not let you go to the next step, the debugger has detected a problem. If you say "Go Home" when this happens, the program will put the cursor on the line where it has detected a problem.

Go/Show    List (Variables)    
["Go" puts the cursor in the List field. "Show" Scrolls down the list field, then returns the cursor to the Script field. Note that this and the following macro only work when Command Wizard is the active window.]
Go    Script    [This puts the cursor on the last line of the script field.]

Finish Everything    
[This allows you to skip over Step 7 of 7 and the List windows, provided the lists are already defined. If they are not, this and the above command will stop at the empty list and display an empty list error message.]
Next     1-10     Finish


Bigger Window
    
[This copies what's in the text or script window to the Wordpad Macro.txt file, which accepts most 6 of 7 commands. Use "Copy to NatSpeak" to switch back to the 6 of 7 Window when you are done, or use the "Next," "Please Finish," or "Finish Everything" commands directly.]
Bigger Window Two    [This does the same as above, but copies to the WordPad Macrowin2.txt file instead. This allows you to have two macros in bigger windows open at once.]
Notepad Window

Script
/System Script    Line    
[This puts SendKeys before and quotes around whatever is on the line the cursor' s on. This is useful command to use if you want to convert a Text macro to a Script macro.]
Script/System Script    Line    Stay    [This does the same as above, but the cursor stays on the same line instead of advancing to a new one.]

Note: The next group of commands -- from Active Control Pick to WinHelp -- is the full set of NatSpeak macro scripting commands. For full explanation of how use these commands, see page 74 of the NaturallySpeaking Professional Creating Voice Commands manual. Most of the following macros type the command plus appropriate punctuation. Most often this is just a set of quotation marks with the cursor positioned between them. For commands that include arguments, depending on the argument, the macro will return default arguments, or a highlighted word indicating what type of argument should be added. For a few commands, multiple macros allow you to set arguments with one phrase. For instance, "Button Click Left Double" will return "Button Click 1, 2.
In addition, you can position the cursor before and after scripting commands by saying "Another, Insert Last, Last, New, or Next" before and/or after the command. (This is also true for variables and other commands in the 6 of 7 macro list.)

Active Control Pick
Active Menu Pick
Ap Bring Up
Ap Swap With
Beep

Button Click
Button Click    Left (1)/Middle (4)/Right (2)    Single (1)/Double (2)    
[This allows you to specify what mouse button click and how many times to click it. The numbers correspond with the commands. For instance, if you say "Button Click Left Single" or "Button Click 1 1" The command will return "Button Click 1, 1, which is a left single click. The next three sets of commands combine this command with cursor movement commands.]
Button Click    Left (1)/Middle (4)/Right (2)    * [This is a shorter way to save the above "Single" command.]

Another/Insert/Last/New/Next    Button Click    Left (1)/Middle (4)/Right (2)    Single (1)/Double (2)
Button Click    Left (1)/Middle (4)/Right (2)    Single (1)/Double (2)    Another/Insert/Last/New/Next
Another/Insert/Last/New/Next    Button Click    Left (1)/Middle (4)/Right (2)    Single (1)/Double (2) Another/Insert/Last/New/Next

Clear Desktop
Control Pick
DDE Execute
DDE Poke
DLL Call
Drag to Point
Go To Sleep
Heard Word    
[You must put quotation marks around each Word of most HeardWord commands. After saying the first word of the HeardWord command, say Another Word. This will put you in the middle of a new set of quotes for the second Word, etc. See the NatSpeak documentation for a full explanation of HeardWord commands.]
Heard Word Caps on
Menu Cancel
Menu Pick
MessageBox Confirm
Microphone    On/Off/Toggle

Add/Put    Mouse Grid    
[This returns "MouseGrid 1," which is the most common MouseGrid command. The following macro allows you to specify all the MouseGrid parameters in a single command. Note: The Set Mouse Position command is often a better choice then the Mouse Grid command. See the NatSpeak Creating Voice Commands documentation for full explanations of each.]
Add/Put Mouse Grid    Off (0)/On (1)/Window (2)
Another/Insert/Last/New/Next    Mouse Grid    Off (0)/On (1)/Window (2)    
[This and the next set of macros combine the above MouseGrid command with standard cursor positioning commands.]
Mouse Grid    Off (0)/On (1)/Window (2)    Another/Insert/Last/New/Next

Play Sound
Shell Execute
Shell Execute    Maximized (Max)/Minimized (Minimized Focus)/Minimized No Focus/Normal (Normal Focus)/Normal No Focus
Remember Point

Set    WinHelp/Button
Set Mouse Position (Mouse Position)    
[This types "SetMousePosition 0, x" with the x highlighted. "0" is the most common setting, and means the following coordinates are relative to the top left of the screen. Type in the x coordinates to replace the x, then type a comma and the y coordinates.]
Set Mouse Position (Mouse Position)    <Mouse Position Categories>
Another/Insert/Last/New/Next    Set Mouse Position (Mouse Position)    <Mouse Position Categories>
Set Mouse Position (Mouse Position)    <Mouse Position Categories>    Another/Insert/Last/New/Next

Mouse Position Categories:
Screen (0)/Window (1)/Pointer (2)/Map Screen (3)/Screen Map (3)/Map Window (4)/Window Map (4)/Client (5)/Client Map (6)/Map Client (6)

Run Script File
SendKeys
Send System Keys
TTS Play String
Wake-up

Wait    <Wait Numbers>
Another/Insert/Last/New/Next    Wait    <Wait Numbers>    
Wait    <Wait Numbers>    Another/Insert/Last/New/Next/Stay
Another/Insert/Last/New/Next    Wait    <Wait Numbers> Another/Insert/Last/New/Next/Stay

Wait Numbers:
1-10, 20, 25, 30-90, 100-900, 1000, 1500, 2000-9000

WinHelp

Another/Insert/Last/New/Next/Then    <Another Commands>    
[These commands position the cursor,
then print the command you specify. "New" starts a new line at the cursor, "Another" goes to the end of the line, then starts a new line. "Insert" starts a new line above the current line, "Then" goes to the end of the line.]

Another Commands:
App Bring Up/App Swap With/Basic Loop/Button Click/Control Pick/Dde Execute/Dde Poke/Dll Call/Go to/Heard Word/Loop SendKeys/Loop HeardWord/Menu Pick/Message Box Confirm/Add (Put) Mouse Grid/Play Sound/Run Script File/SendKeys/Send System Keys/Set Button/Set Microphone/Set Mouse Position/Shell Execute/TTS Play String/Wait/Win Help/If 1-10/Var 1-10 (Variable 1-10)/List Command

If    1-10
    
["If 1" inserts the following and puts the cursor between the quotes: IF _arg1 = "" THEN]
If    1-10    Not Equals (Not Equal to) (Is Not Equal) (Is Not Equal To)
Then    
[This puts the cursor at the end of the line -- after the "THEN" statement if used after one of the previous two macros.]
Arg/Var (Variable)    1-20    [This puts the number of your choice and an equal sign after _arg or var. (Var is just a generic variable).]
Plus    Arg/Var (Variable)    1-20    [This types an argument with appropriate + signs and quotation marks, for example, "Plus Arg 1" would yield "+ arg1 +"]

Add (Put)
/Another/Insert/Last/New/Next    While/When/Loop/End/End If/Else/Then    ["Add" returns the word of your choice in all caps. The other commands position the cursor first, then do the same.]
While/When/Loop
/End/End If/Else/Then    Another/Intent/Intent New/Insert/Last/New/Next    [The "Indent" command puts the cursor on a new line indented in three characters. The "Indent New" commands goes to the next line and indents it three characters.]
Another/Insert/Last/New/New Back/Next    End If    1-10 (Another/Insert/Last/New/New Back/Next    1-10    End If )
Another/Insert/Last/New/Next    While/When/Loop/End/End If/Else/Then    Another/Intent/Intent Next/Insert/Last/New/Next

Else
End If
End If    1-10 (1-10    End If)
Else End    
[This type's ELSE on one line, END IF on another line, and puts the cursor on a blank line in the middle.]
Equals This    [This adds an equal sign and a pair of quotes, and leaves you inside the quotes.]
Not Equal to
Less Equal (Less than or Equal to)
More Equal (Greater Equal) (Greater than or Equal to
If Then Send
If Then Key
If Then Name Address

Duplicate Argument
Duplicate Argument 1-10

OR/AND/XOR    1-20    
[This goes right two characters, then returns the command of your choice.]
Add (Put)    OR/AND/XOR    1-20    [This simply returns the command of your choice.]

SendKeys Keys    
[This Returns "SendKeys Key$"]
List Command
     [This returns "SendKeys MID$(_arg2,0,1)", with the argument number highlighted. This command grabs a certain number of letters from the list indicated in the argument.]

Basic Loop    
[This and the following Loop command assume you're using arg1 for the Loop.]
Loop    <Loop Commands>    
Loop    1-10
Loop    1-10    <Loop Commands>

Loop Commands:
App Bring Up/App Swap With/Button Click/Control Pick/Dde Execute/Dde Poke/Dll Call/Heard Word/Menu Pick/Message Box Confirm/Add Mouse Grid/Put Mouse Grid/Play Sound/Run Script File/SendKeys/Send System Keys/Set Microphone/Set Mouse Position/Shell Execute/TTS Play String/Wait/Win Help/Set Button/If 1-10/Var 1-10 (Variable 1-10)

Get/Add (Bottom)/Top    <MacroBlock>    Block    
["Get" copies the contents of the notepad file of your choice to the Clipboard. "Add" does the same, then pastes the contents at the bottom of the macro. "Top" pastes the contents at the top of the document. To add blocks of characters that can be pasted into macros, 1) save them as Notepad files in "C:\My Documents\Store. And
2) add the name of that file to the Macro Block list that's part of this macro.]
Copy    <MacroBlock>    to    Clipboard    [This is just an alternate way to say the above "Get" command.]

Macro Block:
Hundred/Another Insert

Control     
[This and the following commands return what you say surrounded by the braces required by a macro. For instance, "Control" returns {Ctrl}.]
Shift
Alt
Control Plus
Alt Plus
Up
Down
Tab
Left
Right
Escape

a-z
a-z    a-z
Alt/Control    a-z
Add    1-40
[This adds a space and the number inside the right brace]
Add    +/-
Plus (+)/Minus (-)/Times (*)/Divide (/) (Divided by) (Slash) 1-100    
[For example: " Plus 40" returns "+ 40"]
Space    Number 1-40    [This adds a space and number. Use this if the cursor is already positioned inside the right brace.]

Plus    <Key>    
[This and the following two sets of macros add + signs and the Key of your choice.]
Plus    <Key>    Plus    <Key>
Plus    <Key>    Plus    <Key>    Plus    <Key>

Key: Shift/Alt/Control/Up/Down/Tab/Home/End/Page Up/Page Down/Enter/1-10/a-z/+/-/F1-F12/Esc/</>

Brace    <Key 2>    
[This at the following two sets of macros type the key or keys of your choice surrounded by braces.]
Brace    <Key 2>    <Key 2>
Brace    <Key 2>    <Key 2>    <Key 2>

Key 2: Home/End/Page Up/Page Down/Enter/Backspace/Space/Del/F1-F12/NumKey

Brace    <Key 3>    1-20

Key 3: Up/Down/Page Up/Page Down/Tab/Enter/Space/Backspace/Del

<Key 4>    Plus    <Key 4>
<Key 4>    Plus    <Key 4>    Plus    <Key 4>

Key 4: Alt/Home/End/Up/Down/Right/Left/Tab/Enter/Esc

Space Quotes
Quotes
Braces
Back End Quote
Add (Put)/New    Comment
Comment Line
Lose Comment

Convert (Convert to) (Return)    <Code Categories>

Next/Before/After    <Code Categories>/<Script Words >    
[This selects the next code category or script word of your choice. Before puts the cursor before the word. After puts the cursor three spaces after it, which is usually inside the appropriate quotes or parens.]
Next/Before/After    <Code Categories>/<Script Words>    1-10    [This does the same as above, but proceeds to the next xth instance of the command of your choice.]

Code Categories:
Floating (Floating Point)/Integer (16) (16-bit)/String/Hex to String/Lower (Lower Case)/Integer to String/String (ANSI) Repeat/Upper (Upper Case)/Value (String to Integer)/Character (ANSI)/Position (In String)/Length/Mid (Part) (Part of String)

Script Words: AppBringUp/AppSwapWith/ButtonClick/ControlPick/DdeExecute/DdePoke/DllCall/HeardWord/
MenuPick/MsgBoxConfirm/MouseGrid/PlaySound/RunScriptFile/SendKeys/Send System Keys/ SetMicrophone/SetMousePosition/ShellExecute/TTS Play String/Wait/WinHelp

String/16 (16-bit)/32 (32-bit)/Floating (Floating Point)    Sign


NatSpeak: New Step 7 of 8

Please Finish
    
[Use this to skip over Step 7 of 7. This presses the next button, then the finish button. If you have left a list empty, this command will stop at the empty list instead of finishing.]

 
NatSpeak: Step 7 of 8 and NatSpeak: List: Macro Control

The following four sets of macros all allow you to finish writing one Macro and start writing another using a single command. They give you three ways to do the same thing. For example, you can say "Finish Global," "Another Global" or "Finish Another Global" to finish the current Macro and start a Global Macro.

Finish/Another    Global/Application/<Macro Program>
Finish/Another    <Macro Program>    Categories/Macro/<ProgramCategories>
Finish/Another    Edit    Global/Application/<Macro Program>
Finish/Another    Edit <Macro Program> Categories/Macro/<ProgramCategories>/Top/Bottom/a-z
 
See the Global and NatSpeak Macros for Writing Macros section for the Macro Program and Program Categories lists, and for more explanation of the above macros.


Next Section: About Writing Macros

Previous Section: NatSpeak: Step 6 of 8

Back To Contents

 

[home] [writing] [about scriven] [rsi] [contact]

© Copyright 1999, 2000 Kimberly Patch. All rights reserved.
www.scriven.com