Unify will accept either a regular context diff (old- or new-style) or a unified context diff as input, and generate either a unified diff or a new-style context diff as output. The default is to output the opposite style of whatever was input, but this can be overridden by the -c or -u options. If the source file is not mentioned, it will be read from the standard input. Various other options allow you to echo the non-diff (comment) lines to stderr, modify the diff by removing the comment lines, and/or tweak the diff into a format that is good for releasing patches. Unipatch is a filter to turn a unified diff into a degenerate context diff (no '!'s) for patch.