.TH VCODEX 1 "May 31 2001" .SH NAME \fBvcdiff\fP, \fBvcundiff\fP, \fBvcmap\fP \- data tranforms including compression. .SH SYNOPSIS \fBvcdiff [-m] [-e] [-d] [-G] [-w] [-t] [source [target]] [< target] > delta\fP .LP \fBvcundiff [source [target]] [> target] < delta\fP .LP \fBvchuff [-r] [-f] [-w] [-t] [input [output]] [< input] [> output]\fP .LP \fBvcunhuff [input [output]] [< input] [> output]\fP .LP \fBvcmap [map] < input > output\fP .SH DESCRIPTION .de Tp .fl .ne 2 .TP .. .de Ss .fl .ne 2 .SS "\\$1" .. .ta 1.0i 2.0i 3.0i 4.0i 5.0i .Ss "\fBvcdiff [-m] [-e] [-d] [-w] [-t] [-G] [source [target]] [< target] > delta\fP" \fBvcdiff\fP is a delta compressor, i.e., it can compress a \fItarget file\fP given a \fIsource file\fP or it can just compress a target file by itself. Source and target files can be given as a pair of arguments or the source can be given as a single argument and the target given as the standard input. The symbol \fB-\fP means \fInone\fP for the source file and \fIstandard input\fP for the target file. For example, below are valid invocations of \fBvcdiff\fP: .PP .nf .ft 5 vcdiff source < target > delta vcdiff source - < target > delta vcdiff source target > delta vcdiff - target > delta vcdiff < target > delta .ft 1 .fi .PP Large \fItarget\fP data may be partitioned into windows suitable for in-core processing. These windows are matched against source windows that may come from the source file or some earlier part of the target file. By default, \fBvcdiff\fP uses a fast search algorithms based on matching n-gram frequencies Below are arguments for \fBvcdiff\fP: .Tp \fI-m\fP: This option causes \fBvcdiff\fP to just mirror file offsets between matching source and target windows. \fI-e\P: This option causes \fBvcdiff\fP to perform an exhaustive search based on n-gram frequencies to find a matching source window to a target window. This search nearly always finds an optimally matching window but it is slow, hence the name. See the description of the windowing method \f5Sfwslow\fP in \fIvcodex(3)\fP for details. .Tp \fI-d\fP: This option causes \fBvcdiff\fP to compute only the differences between source and target data. That is, it will not attempt to compress target data using data from the target windows themselves. .Tp \fI-G\P: This option causes \fBvcdiff\fP to compute a delta encoded with the \fBGDIFF\fP format (http://www.w3.org/TR/NOTE-gdiff-19970901.html). .Tp \fI-w\fP: This option sets the window size, i.e., amount of data to be processed at one time. .Tp \fI-t\P: This option causes ]fBvcdiff\fP to generate a trace of source and target windows and results of their compression. .PP .Ss "\fBvcundiff [source [target]] [> target] < delta\fP" \fBvcundiff\fP decodes data produced by \fBvcdiff\fP. Thus, if the data was a result of compressing a target file against a source file, then the source file must be given in order to decode correctly. Source and target files are given in a manner similar to that of \fBvcdiff\fP except that the target file is now an output file instead of an input file. In addition, since the shell typically opens a standard output file only for writing, if the compressed data was created with \fI-g\fP or \fI-s\fP options in \fBvcdiff\fP, the target file should be given as an argument so that \fBvcunhuff\fP can open it for both reading and writing. .PP .Ss "\fBvchuff [-r] [-f] [-w] [-t] [input [output]] [< input] [> output]\fP" .Ss "\fBvcunhuff [input [output]] [< input] [> output]\fP" \fBvchuff\fP and \fBvcunhuff\fP provide a pair of Huffman compressor and decompressor. .Tp \f5-r\fP: This causes \fBvchuff\fP to use a recursive partitioning algorithm to compute areas with different statistical models and compress them separately to improve compression. .Tp \f5-f\fP: This causes \fBvchuff\fP to use a first-fit partitioning algorithm to compute areas with different statistical models and compress them separately to improve compression. .Tp \fI-w\fP: This option sets the window size, i.e., amount of data to be processed at one time. .Tp \f5-t\fP: This causes \fBvchuff\fP to generate a trace of parts that are compressed separately. .PP .Ss "\fBvcmap [map] < input > output\fP" \fBvcmap\fP maps the bytes of the \fIinput\fP file using the given \fImap\fP and writes the result to \fIoutput\fP. If \fImap\fP is not given, \fBvcmap\fP use the \fBrot13\fP mapping. A \fImap\fP is a string with an even number of characters. Each pair of letters specifies that the left character is mapped to the right character. For example, the below call will map all lower case 'a' to upper case 'A': .PP .nf .ft 5 vcmap "aA" < input > output .ft 1 .fi .PP .SH SEE ALSO \fBcompress(1)\fP, \fBdiff(1)\fP, \fBpack(1)\fP, \fBrot13(1)\fP, \fBvcodex(3)\fP. .SH AUTHOR Kiem-Phong Vo ([email protected])