[the following has been taken from documentation supplied with VFILER version 4.1, although the macro parameter character has been changed to what is now in effect ($)] Invoking User Macros The VFILER command set is augmented by a set of user-definable macros contained in file VFILER.CMD. VFILER performs parameter substitutions to build command lines. Each defined macro has a unique identifier. The identifier can be any printable character except a space. There are two ways to invoke a macro, directly or indirectly: Direct Invocation To invoke a macro directly press the lead-in character (default is ESC) followed by the macro identifier character. As a special case, macros with digit identifiers (0..9) can be invoked without pressing the lead-in key. Indirect Invocation A macro is invoked indirectly by striking "#" and waiting for the HELP Block of VFILER.CMD to be displayed. The user then invokes the desired macro by pressing the identifier key. Search Path When a macro is invoked, VFILER searches along the path for VFILER.CMD, extracts the macro and expands it before it is executed. Since VFILER searches for VFILER.CMD along the path, several VFILER.CMD files may be available for the user. Structure of VFILER.CMD The structure of VFILER.CMD is quite simple. It can be created by any text editor, and it consists of the following types of lines: 1) a command line macro, which begins with a macro identifier that can be any printable character except a space and which contains the text of the macro to be expanded and executed. 2) a help block, which is printed whenever the user types a pound sign (#); this block is denoted by a line which begins with a pound sign, and it extends from there to the end of the file 3) a comment line, which is used to embed explanatory comments or a title; a comment line is a command line which begins with a space. Command line macros The command line macro consists of the macro identifier , zero or more spaces (which are ignored), and the text of the macro with embedded prompts for user input. Prompts are enclosed in single- or double-quotes (' or "). When VFILER executes these command lines, it prints the prompts contained within the quotes as they are encountered and waits for the user to input a line of text (terminated by a RETURN), at which point the text is substituted in the command line where the prompt is. If a prompt extends to the end of a command line, it need not be terminated. Spaces within the prompt are significant. Example: 1 copy 'Source File? ' 'Destination Dir? ' When macro 1 is invoked, the user is prompted with "Source File? ", he enters his text, it is substituted in the command line, he is prompted for "Destination Dir? ", he again enters a response, it is substituted, and the resulting command line is executed. There are a number of parameters that VFILER will expand before placing the command line in the command buffer. The values of the parameters are as follows: Symbol Parameter $D Current Disk Letter $U Current User Number (1 or 2 digits) $C Current Named Directory (or "noname") $F Current File Name and Type (pointed to by arrow) $N Current File, Name only $T Current File, Type only $P Current File, Complete Spec DU:FILENAME $H Logged in DU: $R Logged in DIR: $ Inserts in command line, where is any character other than those above (e.g., $$ or $") Examples: (A0:BASE logged in, A15:ROOT displayed, and pointing to MYFILE.TXT) macro: Disk is $d, User is $u, File is $f expansion: Disk is A, User is 15, File is MYFILE.TXT macro: Name is $"$N$", Type is $"$T$", Logged-in DIR is $"$R$" expansion: Name is "MYFILE", Type is "TXT", Logged-in DIR is "BASE" A "!" placed at the beginning of a macro will set the shell wait message so that you will get the "strike any key" message when VFILER is reloaded. Help Block The Help Block in the VFILER.CMD file is simply a block of text which extends from the pound sign (#) in the file to the end of the file. ^A will turn on highlighting (if defined in TCAP) and ^B will turn it off. This help information is displayed to the user as one screen, and it is the responsibility of the person who writes the VFILER.CMD file to insure that this body of text (including the line the pound sign is on) does not exceed 22 lines. Example: # Help for Word Processing 1 - Run WordStar 2 - Run WordMaster 3 - Run ROFF4 Comment Line A comment line is any line in the command section of VFILER.CMD which begins with a space. The text of that line is the comment. It is not displayed to the VFILER user and is used only for reference by the person who wrote the VFILER.CMD file. Example: Edit Macro W $d$u:;ws $f;$h: Assemble Macro A !$d$u:;zas $n;$h: [the following information has been abstracted from information provided with VFILER version 4.2] VFILER now logs into the displayed directory (certain problems Sage warns from this feature would appear to have been addressed in the recoding of ZCPR3 to version 3.3). File attributes are retained in renaming and moving, and there are options for dealing with other operations. Control J jumps to next file matching last given mask. For example, when ^J asks you what mask, you say ".D" for stand for all *.DOC files, then just keep hitting ^J to get to each file in turn. [the following information comes from documentation supplied with ZFILER version 1.0a] Macro designator changes to $ from %. [further information should be gleaned from current ZFILER 1.0f documentation and by an article by Rick Charnes called ZF10F.ART, which describe the addition of a group user macro facility to ZFILER]