Merge Script File Spec

This specification describes the contents of a script file, used for executing a series of commands to transform input data sources and templates into appropriate output.

The file extension for a script file should be ‘.tcz’, short for ‘TDF Czar’, which was a predecessor to PSTextMerge, which was in turn a prececessor to Notenik.

A script file is a text file formatted into five columns, using either tabs or commas as delimiters to separate the columns.

Blank lines, as well as lines beginning with ’<!— ’, will be ignored.


1moduleSpecifies the module to be used to execute the command.
2actionThe action to be taken by the indicated module.
3modifierA field used to modify the effects of the action in some way.
4objectNames the object of the action.
5valueSpecifies a value to be assigned, or to be compared.


The module column may contain any of the following values.

Input Parameters

The action for an input command may be either ‘set’ or ‘open’. The set command(s) should precede the open command to which they will apply.


When using ‘set’, the variable to be set would be named in the object column, and the value to which it should be set would be supplied in the value column.

The following variables may be set.


When using ‘open’, the modifier field specifies the type of data source, and the value field specifies a path to the data source to be opened.

The object field is normally left blank, but an object of ‘merge’ can be used to cause the current data source to be merged with the prior data source, rather than replacing it.

The following modifier values are valid:

Filter Parameters

A filter command may have an action of ‘clear’, ‘add’ or ‘set’.


Clears any filter parameters that might have previously been set, so that new ones can be added. A clear action must be followed by a set action in order to actually remove any previously specified filtering rules.


Adds a new filter rule. The object would name the field to be compared as part of the filter. The value field would specify a value to which the object will be compared. And the modifier field specifies the nature of the comparison.

The following modifiers are valid (with all of the different forms on a line producing identical results).


An action of set causes the previously added filtering rules, specified since the last clear action, to be applied.

Sort Parameters

Just as with the Filter module, the Sort module uses actions of ‘clear’, ‘add’ and ‘set’.


Clears any sort fields that might have previously been set, so that new ones can be added.


Adds a new sort field, with major ones coming first, and minor ones following. The object would name the field to be used as part of a sort key.

If the modifier field starts with a ‘d’, then the field values will be sorted into descending sequence; anything else will result in an ascending sequence.


An action of set causes the previously added sort fields, specified since the last clear action, to be applied.

Template Parameters

A Template command may have an action of ‘webroot’, ‘open’ or ‘generate’.


A ‘webroot’ action causes the value column to be used as a path to the top level of a website to be generated. Template variables of ‘relative’ will then be replaced with a series of ‘../’ strings taking a file reference back to the top of the website.


The file pointed to by the path in the value column will be opened as a Template file.


The previously opened Template file will be processed, generating one or more output files.

Output Parameters

An Output command may only have an action of ‘open’.


The current data source, filtered and sorted per any previous relevant commands, will be written to the output file specified in the value column.

A file extension of ‘.csv’ will result in a comma-separated values file being written; any other file extension will result in a tab-delimited file being written.