Programmer's WorkBench (pwb.hlp) (Table of Contents; Topic list)
Defining Macros (Macro Syntax)
                                             Up Contents Index Back
─────Programmer's WorkBench─────────────────────────────────────────────────
 
     PWB uses the following line-oriented syntax for defining macros.
     Macros can be defined in the TOOLS.INI file or interactively by
     using the Assign function or by recording.
     See: Assign, TOOLS.INI Tagged Sections in TOOLS.INI
          Macro Recording
 
     Syntax
 
     name := definition
 
     <name>          Name of the macro being defined.
 
     :=              Macro-definition directive.
 
     <definition>    List of functions, macros, strings, and directives
                     that define the macro.
 
     The name can use any character other than the colon, semicolon,
     and white-space characters. Macros are not case sensitive. The
     name cannot be any of the following directives:
 
          :=  :>  =>  +>  ->  <  <y  <n
 
     Other than these directives, there are no reserved words. You can
     use any name. Macros defined by PWB or a PWB extension generally
     begin with '_pwb' but there are exceptions.
 
     White space in a definition is significant only to separate one
     element from another. Use white space freely to make your
     definitions readable. A definition can be placed on multiple lines
     by using TOOLS.INI line continuations.
     See: Backslash: TOOLS.INI Line Continuation
 
     Macros can call PWB functions, extension functions, and other
     macros. You can use a name in a macro definition before it is
     defined, but all macros must be defined before they can be
     executed. PWB calls functions and macros by name at run time.
     That is, PWB uses late (dynamic) binding. You can change a macro's
     behavior by redefining the called macros.
 
     NOTE: Macros can be nested to a maximum depth of 20 calls. This
           limit makes recursion impractical in most situations.
 
     See
 
     Macro Conditionals (Looping)
     Macro Prompt Directives
     Macro Recording
     Macro String Syntax
     Tagged Sections in TOOLS.INI
                                    -♦-