PPWIZARD is a free preprocessor for HTML, REXX, Visual Basic or any text files.
[Bottom][Contents][Search][Prev]: Curley Codes[Next]: LONG COMMAND LINES / CONFIGURATION FILES
\ -> PPWIZARD Command Line -> Input Mask

Input Mask

An input mask on a PPWIZARD command line is used to tell PPWIZARD what files to process. Anything which is not a PPWIZARD switch (option) and not a reference to a project file is an input mask.

You may specify any number of masks on the command line and they can be the name of a single file or may contain the normal wildcard characters for your operating system ("?" & "*" for OS/2 and Windows). See the documentation for your operating system for more details. Note that with a GETFILELIST hook you can enhance the way that the mask is handled. Note that for some operating systems ppwizard gets passed a pre-expanded list of files and never sees the wildcards, if this is not what you want you can always use curley codes to hide the value from the operating system or regina (or use the /Input switch).

PPWIZARD does not process the masks until all command line options have been processed. Most switches are not mask specific but the ones that are should generally be specified before the input mask. How PPWIZARD handles masks for which information is unknown is configuration specific (see /ExtnInfo), by default the last used value on the command line is used if available, otherwise a suitable default is chosen. The switches in question are:

  1. /DependsOn

  2. /output

  3. The processing mode switches:

If a mask (which may include a path) is preceeded by the "+" character then this indicates that you wish to process all files matching the mask in the indicated (or current) directory and all of its subdirectories.

To specify the location where ppwizard will place the generated output files (current directory by default!) you need to use the /output switch. You may wish to also use a similar specification for the /DependsOn switch if you use it (if not, why not????).

Each source file may include other (external) files such as common header files containing your standard definitions and macros.

The default extension configuration defines the following source file extensions (which can be altered by you):

You can update or remove any default handling file types (perhaps by using the PPWIZARD_OPTIONS environment variable). This would allow you to define how "perl" or other code should be handled, common switches for this would be:

Each file has an associated base directory, to override the default value (the masks directory) you can use the /BaseDir switch or imbed the "{ENDBASE}" (upper case) string within the input mask after one of the slashes (the string marks the end of the base directory). Note that if you do mark the base directory this way the input mask should specify a full path (or begin with '.' or '..' followed by a slash). An example of specifying the base directory would be "c:\projects\source\main\{ENDBASE}subdir1\*.IT".

There is a special type of input mask" which begins with "?\" or ("?/" in Unix) which indicates that you wish PPWIZARD to find a single specific file (no wildcard characters etc), The FindFile() routine is used to locate the file. This type of mask should not begin with "+". It is meant for situations where PPWIZARD may be having trouble finding files (probably as yet untested version of Unix).

All masks are processed in order from first to last. When a mask is expanded the resulting list is sorted (case insensitive) and so process ordering is predictable ("a.it" will be sorted before "b.it"). If two masks refer to the same file only the first occurance is processed.

Note that in Unix in you may wish to use the "-Input" switch to specify masks (this delays their expansion, PPWIZARD does it).

By default PPWIZARD wants at least one file to match every mask and at least one file to match over all masks, to alter this you will need to use the /0OK switch.

email me  any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Search][Prev]: Curley Codes[Next]: LONG COMMAND LINES / CONFIGURATION FILES

My whole website and this manual itself was developed using PPWIZARD (free preprocessor written by Dennis Bareis)
Saturday May 28 2022 at 2:55pm