name: tkdiff
synopsis: tkdiff [-Vbiw] [-D date] [-r version_tag] file1 file2
description: graphical file comparison utility

options:
 -V: compare against repository version
 -D: use the most recent revision no later than date. see -r for how
     this affects the comparison. Note that if -D is specified -V is
     assumed.
 -r: revision number to compare against. zero, one, or two -r options
     may be present. with no -r option, the working file will be
     compared against revision it was based on. with one -r option,
     the working copy will be compared against that revision. With two
     -r options, the two revisions will be compared. One or two -r
     options can be replaced with -D options. Note that if -r is
     specified -V is assumed.
 -n: allow cvs diff to operate without locks (generally safe for diff)
 -b: ignore trailing blanks
 -i: ignore case
 -w: ignore all blanks and whitespace

If no arguments are present:
  if the -V, -D, or -r is specified it will compare the current
  cvs working copy against the revision it was based on in directory
  mode.

  if not in cvs mode (no -V, -D, or -r flag), it will error:

If one argument is present:

  if the one argument is a file:
     if this is a cvs directory, it will compare the file against the
     revision it was based on.

     if it is not a cvs directory, it will error.

  if the one argument is a directory:
     if this is a cvs directory it will compare the working copy
     directory specified against the revision it was based on in
     directory mode. It will assume the -V flag. The behaviour in this
     mode will be modified by -r and -D options. 

     Note that: `tkdiff -V` and `tkdiff .` are equivalent. 
     
     if it is not a cvs directory it will error.
     
  if the one argument is a file:

     if this is a cvs directory it will compare the working copy
     specified against the revision it was based on in single file
     mode. It will assume the -V flag. The behaviour in this mode will
     be modified by -r and -D options.

     if this is not a cvs directory it will error.

If two arguments are present:

  if the -V, -r, or -D flags are not specified and neither is a
  directory, it will just compare the two files.

  if the -V, -r, or -D flags are not specified and both are
  directories, then it will do a directory compare against the two
  directories.

  if one arg is a file and the other is a directory and it is not in
  cvs mode, it will error.

Note:

 This program uses GNU diff version 2.7 to compare files, the output
 format is hardcoded into the program itself.
      
To Add:

 Recursive directory scan

 
