
rej tries to merge simple rejects and then run a merge program so the 
changes can be verified.  It is not meant to resolve complex problems
that would not be immediately obvious to the programmer, the goal instead
is to quickly fix the easy problems.  

rej understands both unified and context diffs.

There are four basic rejects fixable via rej.

1) missing context at the top or bottom of the hunk
2) different context in the middle of the hunk
3) slightly different lines removed by the hunk than exist in the file
4) Large hunks that might apply if they were broken up into smaller ones.

rej also allows you to tag hunks in a reject with special processing
hints.  Those are defined in the HUNK HINTS section below.

[ USAGE: ]

rej filename filename.rej

This will merge filename.rej into filename, and then start the default
merge program (gvimdiff) to compare them.  Look at vimrc in this directory 
for vimdiff commands to copy chunks from one vimdiff window to another.

rej -m kdiff3 filename filename.rej

Same as above, but will use kdiff3 instead of gvimdiff.  Almost any
merging program can be supplied to -m, vimdiff, kdiff3, meld and tkdiff
have been tested.  Defining $REJMERGE in your environment will do the
same as -m.

rej -o output_file filename filename.rej

-o skips the merge program and just stores the merged stream into output_file

-a will turn on auto mode, which stores the merge stream directly back into
filename.  filename.mergebackup is created with the old file contents.
The merge program is run showing the differences between filename and
filename.mergebackup.  Use this mode with caution.

-c will turn on context mode, which prefers context from the reject file
over context in the source.  This might make it more clear what the reject
was trying to do, but will make the differences between the source file
and the merge stream larger.

-i enables interactive mode, which lets you repeat the merge over
again after tweaking the source or reject file.  Type help for the
various commands.

-r opens the reject in $REJEDITOR or $EDITOR or gvim automatically

There are few more options, see rej -h for the details.

rej allows for some lazy typing.  "rej filename" will guess the name of
the reject file.  "rej filename.rej" will guess the name of the source
file.

[ HUNK HINTS ]

Hints allow you to specify special instructions for each hunk.  The
hints are appended on the end of the first line of the hunk, using
'###' as the control sequence that signals the start of the hint.  

Hints can be given in any order and should be separated by whitespace.  The
supported hints are:

only	-- process only this hunk, ignoring every other hunk
last	-- stop processing after this hunk
context	-- enable -c for this hunk only
exclude	-- skip this hunk completely but continue processing others

Example hinted unified hunk:

@@ -2675,21 +2673,33 @@ static int foo( ### only context

For context hunks:

*** 961,971 **** ### exclude

