TextPipe can be run from a DOS shell or from a shortcut with parameters to make it run completely automatically. This is very useful for performing conversions automatically or on machine start up (by making the short cut an entry in the Start Up folder). You can also use the command line wizard to provide examples. If you are having difficulties, please see the Troubleshooting command-line automation page. TextPipe sets an exit code on completion.

Note:

1. Most commands change settings or add filters to the current filter. If you load a filter with /F=, the /F= command must appear FIRST, and any commands that modify it MUST come AFTER, otherwise the loaded filter's settings will override prior commands.
2. Any commands with embedded spaces must be surrounded with double quotes. You must surround the entire command/setting combination e.g. "/f=My Documents\DataMystic\TextPipe\My Filters\test.fll" NOT /f="My Documents\DataMystic\TextPipe\My Filters\test.fll"
3. Windows limits the command line length to about 260 characters. You can overcome this limitation by using the /Z=<filename> command to load command line parameters stored in a file. Note that you MUST remove any double quotes from around commands with embedded spaces when you put them in the command file.
4. If you want to add filters to a command-line loaded filter at run time, you must ensure that the very last filter (prior to the output filter) is not a sub filter, otherwise all added filters will be added as sub filters.
5. Not all filters or options can be set via the command line. To workaround this limitation, save a filter with your desired settings (e.g. an output base directory of 'c:\temp'), and then open the filter as the first item on the command line (using /f=<filter name>). If you use /F= a second or third time, these filters will be appended to the existing filter.
6. If you want TextPipe to start minimized, use /MINIMIZED as the very FIRST command line parameter, or make sure that it is on the command line and NOT in the command file.

You can automatically generate command line text from your filter using the File Menu\Export\Export command line to clipboard feature.

Conventions used below:

<> surrounds text that is to be entered. Do NOT enter the '<' and '>' characters

Alternatives are shown in square brackets '[' and ']' with a pipe '|' character between them. Do NOT enter the square brackets or the pipe character - just type the single alternative you require.

Usage:

"C:\Program Files\DataMystic\TextPipe\textpipe.exe" [/MINIMIZED|/MAXIMIZED] ["/F=my filter file.fll"] [commands] [wildcards] [/G [/Q]]

Where [commands] is zero or more of:

<wildcard>

A wildcard or filename to add to the list of files to process e.g.

"c:\Documents and Settings\Simon\Desktop\*.txt;*.ans"

@<name>=<value>

Predefines the value of the global variable name to the value value

/{=<string>

Adds a comment. See comment filters.

/A[S|F|T|E]=<string>

Adds a string:
· ‘S’ Adds a left margin to every line (like email quotes etc)
· ‘F’ Adds a right margin to every line
· ‘T’ Adds a header to the start of every file (e.g. banner advertising)
· ‘E’ Adds a footer to the end of every file (e.g. copyright notices)
· '1' Remove lines from list
· '2' Retain lines from list
· '3' Remove lines matching perl pattern
· '4' Retain lines matching perl pattern
· '5' Add text side by side
· '6' Add repeating text side by side

/AL=start,increment

Add line numbers, starting from start and with the given increment e.g.

/AL=500,50

See Line number filters.

/B<C|P|S>

Skip binary files. Default: Skip. Use
· 'P' for Process all binary files
· 'S' for Skip binary files
· 'C' to Confirm each binary file

This flag is reset to the default after a /G. See Input filter.

/C<U|L|S|T|I|R...>

Case translation, conversion, email and miscellaneous:
· ‘U’ for UPPERCASE
· ‘L’ for lowercase
· ‘S’ for Sentence case
· ‘T’ for Title Case
· ‘I’ for tOGGLE cASE
· 'R' for RanDOm caSE
·  
· 'M' for Convert IBM drawing characters
· 'D' for debug filter
· '-' for Delete All
· 'Z' for Randomize lines
· 'W' for Word list
· 'V' for Reverse each line
·  
· '0' Extract email addresses
· '1' UUencode
· '2' UUdecode
· '3' XXencode
· '4' XXdecode
· '5' Mime Base 64 encode
· '6' Mime Base 64 decode
· '7' Mime quoted printable encode
· '8' Mime quoted printable decode
· '9' Extract URLs

/CLEARCOMMENTS

Clears all comments from the filter.

/CLEARFILES

Clears all files from the file list.

/CLEARFILTERS

Clears all filters from the filter list (this does not close the filter)

/CLOSEONCOMPLETION

Closes the window for a processing thread as soon as the thread completes. This option needs to precede each /G command.

/D[A|B|D|E|H|K|L|R|S|W]...

Removes:
· 'L' Removes blank lines
· 'E' Removes all spaces and tabs from the end of lines
· 'S' Removes all spaces and tabs from the start of lines
· 'B' Removes binary characters
· ‘A’ Removes ANSI codes
· 'D' Translate IBM drawing characters
· 'H' Remove HTML and SGML
· 'K' Remove backspaces
· 'R' Resolve backspaces
· 'W' Removes multiple whitespace
· 'M' Removes email headers
/deletelistfile Deletes the list file. Only works when placed immediately after a /L=listfile directive.
/EXPORTFILTERTOLOG Exports the filter's text to the log file. Useful for command line automation to ensure that the filter you build via the command line is the filter you get. The log filename MUST have already been specified. Should only be used after the filter list has been completely built, otherwise you will only get partial results.

/EXTENSION=<new extension>

Sets the new file extension to be given to all output files. A blank value disables the setting. See Output filter.

/E[R]<D|M|U|A|F<cpr>><D|M|U|N>

Line feed conversion. See End of line conversion filter.

Optional R to remove extraneous line feeds.

Input format:

· ‘M’ for Macintosh
· ‘D’ for DOS
· ‘U’ for Unix/Amiga
· ‘A’ for Auto
· ‘F’ for Fixed Length, followed by the number of characters per record (cpr).

Output format:

· ‘M’ for Macintosh
· ‘D’ for DOS
· ‘U’ for Unix/Amiga
· ‘N’ for None (ie remove line feeds)

e.g.

/ERDU to convert from Dos to Unix EOL, removing extra linefeeds

/EF742D to convert from fixed record of 742 characters to DOS

/F=<filter filename>

Open filter list file.

This command opens a filter file. Opening a filter file DELETES any filters and overrides all options that have been specified by any previous command line parameters e.g.

textpipe.exe /ERDU "/f=My Documents\DataMystic\TextPipe\My Filters\test.fll"

If you have already loaded a filter file but have not yet activated it with /G, any subsequent /F commands will APPEND its filters to the existing filter list. This can be used to combine multiple filters together, even those that have sub filters. Note that this is different behaviour to inserting using the GUI, which always occurs at the current cursor position.

/FROMSHELLEXT

When a filter is triggered from Windows Explorer, the command line option /fromshellext is added automatically after the filter name. This option causes TextPipe to clear any existing files from the filter's file list before adding the selected files from Windows Explorer. A warning is given if any files are cleared.

/G

Go! Begin a conversion thread with the specified options. You can specify extra options and follow them with /G again to start a second thread of execution. After starting a thread of execution, all options return to their default settings.

After a thread has been initiated with /G, the following actions occur (in ADDITION to all flags returning to their defaults):

· The entire list of filters is cleared
· The entire list of files is cleared

Note: The /G command must be on the right hand side of all the commands that make up a thread of filtering.

/H<A|O>

Character set translation
· A for ANSI to OEM
· O for OEM to ANSI
· N for ANSI to Unicode
· C for Unicode to ANSI

/I

/I+

/I-

Subfolder recursion. Default: On. Specifying /I toggles it, /I+ turns it on, /I- turns it off.

This option is NOT reset after a /G

/L=<file list filename>

Load a list file containing a list of filenames and wildcards. The file should contain one file specification per line e.g.

C:\docs\*.txt;*.ans

D:\unix\*.*

...etc

Note: The filenames in the list file must NOT be surrounded by double quotes.

See also the /deletelistfile directive.

/LOG=<filename>

Sends log information to the specified file. This is primarily used during command line automation. If the file cannot be written to or disk space fills up logging is turned off. TextPipe will force the creation of folders if necessary. See logging options.

The default file is 'textpipe.log' in the folder TextPipe was started from. A blank log filename turns logging off, any other value turns logging on.

/LOGENABLE=(0|1)

Controls whether logging is on or off
· 0 = Logging disabled
· 1 - Logging enabled

See logging options.

/LOGMODE=(0|1)

Controls the logging mode.
· 0 = Overwrite existing file
· 1 - Append to existing file

See logging options.

/LOGTHRESHOLD=<minimum lines>

Controls the minimum number of log lines before the log data is written to the log file. A value of zero forces all lines to be written out. This is useful for preventing logging for small jobs, and keeps the size of the log file small.

See logging options.

/M=<map filename>

Map - adds a filter with the specified (single byte) map file. See Maps. See also /UNICODEMAP

/MAXIMIZED

TextPipe starts maximized.

This command line option MUST be placed FIRST.

/MERGETOFILE=<merge filename>

Sets the output filter to merge all output to a single file, and sets the filename to the filename specified. See Output filter.

/MINIMIZED

TextPipe starts minimized. TextPipe also uses less memory when minimized because the screen representation does not need to be stored. This command line option MUST be placed FIRST.

/MULTIMAP=<file.xls>

Specifies the Excel document to load as a Unicode multi-map. By setting the MULTIMAPORDER, the same Excel spreadsheet can be used to map to different output formats.

/MULTIMAPLANGUAGECALL=<string>

Specifies the format of the text string used to indicate a change of output language in a multi-map. The default is

((=%s=))

where %s is the new language name.

/MULTIMAPORDER=<Primary>(,secondary,etc)

Specifies the precedence order given to the columns of an Unicode multi-map. The value is a comma-separated list of column names (each name is stored at the top of the column).

The first column specified is called the primary. If only the primary is specified, then the remaining columns are used in left-to-right order (ignoring the primary column). If two or more columns are specified, then only those columns are searched for values.

/N

/N+

/N-

Retain the original file’s date and time. Default: Off. Specifying /N toggles it, /N+ turns it on, /N- turns if off. See Output filter.

This flag is reset to the default after a /G

/NEWFILTER=<new filter filename>

Similar to /F, but opens a new filter and sets its filename before it gets saved.

/OUTPUTFOLDER=<new output folder>

Sets the new output folder for all files to be written to. See Output filter.

/OUTPUTKEEPSTRUCT

/OUTPUTKEEPSTRUCT+

/OUTPUTKEEPSTRUCT-

Controls whether the folder structure of the input files is retained when the output files get written to a new folder. See /OUTPUTFOLDER, and the Output filter.

/P<A|E,,,>

Representation translation and other miscellaneous filters
· A for ASCII to EBCDIC
· E for EBCDIC to ASCII
· D for decimal dump
· H for hex dump
· U for ROT13 encode/decode
· 0 for hex encode
· 1 for hex decode
· 2 for HTTP encode
· 3 for HTTP decode
· 4 for reverse line order

/PLAYSOUND=(0|1)

Controls whether a sound is played on completion
· 0 = Sound is disabled
· 1 - Sound is enabled (default)

/PREPAREFILTERFORDISTRIBUTION

Prepares the filter for distribution. See the Tools Menu

/Q

/Q=milliseconds

Exit after completion, with optional delay. Default: Off. Using /Q causes TextPipe to exit 5 seconds (5000 milliseconds) after all conversion threads complete. You can optionally specify a millisecond value e.g. 500 for 0.5 seconds.

If an error occurs, it is displayed.

Note: The /Q command should be the very last command on the command line.

/R[C][P]=<replace string>

Replace string. See Search and Replace filter.

Optional C for Case Sensitive replace. Default: Off. Select this option to use the same case for the replace string as was found in the search string.

Optional P to prompt on replace. Default Off.

Must be preceded by a /S to specify the search string. After the replace string has been specified, the Case Sensitive and Whole Words options both reset to Off.

/REGSERVER

Forces registration of TextPipe's COM server - this only succeeds if the user is an administrator.

/REPLACELIST=<filename>

Loads a search/replace list filter with the specified file.

/S[C][W][X][0-6]=<search string>

Search string. See Search and Replace filter.

You can also add a list of search and replace pairs through the user interface. See also Converting Search/Replaces from other sources.

Optional C for Case sensitive search/replace. Default: Off. Select this command to search for text that is capitalized exactly the way you type it in the Search text box. If you do not select Case, TextPipe finds all occurrences of the text, regardless of capitalization.

Optional W for whole words only (Default: Off)

Optional X to specify that the search string is a regular expression. Default off. This is equivalent to /S1, the old egrep-style pattern.

0-6 Search type. Default 0.

· 0 - Exact search
· 1 - Old egrep pattern
· 2 - Sounds like
· 3 - Edit distance
· 4 - Perl pattern
· 5 - Brief-style pattern
· 6 - Word-style pattern
· 7 - EasyPattern
· 8 - Unicode (UTF-16LE)
· 9 - Unicode pattern (UTF-16LE)

/S... is used in conjunction with the /R command to specify the replace string. For strings with embedded spaces, surround the whole parameter in quotes e.g.

textpipe.exe "/SC=roses are blue" "/R=violets are yellow"

/SAVEFILTER=<filter filename>

Saves the filter to the given filename. Any existing file is overwritten. The filename is added to the list of recent filters. TextPipe will force the creation of folders if necessary.

/ST<spaces per tab>

Compresses spaces to tabs. See Spaces to Tabs filter.

/T

/T+

/T-

/TB

Test mode. Default: Off. Specifying /T toggles it, /T+ turns it on, /T- turns if off, /TB enables backup mode. See Output filter.

This flag is reset to the default after a /G

/TS<spaces per tab>

Expands tabs to spaces. Each tab is replaced by from 0 to Spaces Per Tab-1 spaces depending on the current column. See Tabs to Spaces filter.

/UNICODEMAP=<unicode map file1;file2;file3>

Adds a filter with the specified (unicode) map file. Maps can be loaded from Excel worksheets (.XLS), Comma Separated Value files (.CSV, the default when the file extension is not recognized) and Tab delimited value files (.TAB). This command should be followed by the /UNICODEMAPOPTIONS command below, otherwise non-entered characters are passed through unchanged (Replace Type 0).

Multiple maps can be separated by semi-colons (;)

See Unicode maps. See also /M

/UNICODEMAPAPPEND=<unicode map filename>

Appends a map file to the previously added Unicode Map. This command does NOT accept multiple map filenames.

/UNICODEMAPERRORS=<0|1>

This command determines how overlapping regions are handled for the previously added Unicode map. When set to 0, overlapping regions are flagged as warnings (the default). When set to 1, overlapping regions are logged as errors.

/UNICODEMAPOPTIONS=<type>,<replace with>

Sets the non-entered character options for the previously added Unicode Map filter.

Replace Type:

· 0 - Pass through unchanged
· 1 - Pass to sub filter
· 2 - Replace with value (use next option to specify it)
· 3 - Remove

Replace with:

The string to replace it with, if the Replace Type is 2.

e.g.

/UNICODEMAP=my_translations.xls

/UNICODEMAPOPTIONS=2,Invalid character found 0x%4.4x

See Unicode maps.

/UNICODEMAPUTFMODE=<0|1>

Sets the UTF mode for the previously added Unicode Map filter.
· 0 - UTF-16
· 1 - UTF-32

See Unicode maps.

/UNREGSERVER

Forces unregistration of TextPipe's COM server - this only succeeds if the user is an administrator.

/WW<column width>

Word wrap. See Word Wrap filter.

/Z=<filename>

Read command line parameters from a command file. Very useful for creating filters based on Perl scripts or other search/replace programs, or for working around the Windows limitation of approx 260 characters on the command line. Note that you MUST remove the double quotes around command when you place them inside the command file, AND place ONE command per line. This option ignores blank lines in the command file, and allows comments on lines starting with a ';'.

For example, if you had the long command line

start /w textpipe.exe "/f=my special filter.fll" /g "/f=my special filter2.fll" /g "/f=my special filter3.fll" /g "/f=my special filter4.fll" /g /q

This would change to something like

start /w textpipe.exe "/z=commands.txt"

and the file commands.txt would contain

;my new command file

/f=my special filter.fll

/g

/f=my special filter2.fll

/g

/f=my special filter3.fll

/g

/f=my special filter4.fll

/g

;exit on completion

/q