App-ccdiff
view release on metacpan or search on metacpan
* `bcompare` (C, X11, not freeware/opensource)
* `kompare` (C, X11, KDE)
* `xxdiff` (C, X11)
* `meld` (Python)
* `kdiff3` (C, X11, Qt)
* `tkdiff` (Tcl/Tk)
## Other (not checked yet)
Reasons for not checking include Windows and emacs.
* araxis
* bc
* bc3
* codecompare
* deltaworker
* diffmerge
* ecmerge
* emerge
* examdiff
* guiffy
* gvimdiff2
* gvimdiff3
* opendiff
* p4merge
* winmerge
# Dependencies
This tool will run on recent perl distributions that have
[Algorithm::Diff](https://metacpan.org/pod/Algorithm::Diff)
installed. The modules
[Term::ANSIColor](https://metacpan.org/pod/Term::ANSIColor)
and [Getopt::Long](https://metacpan.org/pod/Getopt::Long)
that are also used are part of the perl CORE distribution
since at least version 5.6.0.
```
suse# zypper in perl-Algorithm-Diff
centos# yum install -y perl-Algorithm-Diff
other# cpan Algorithm::Diff
```
# Git integration
You can use ccdiff to show diffs in git. It may work like this:
```
$ git config --global diff.tool ccdiff
$ git config --global difftool.prompt false
$ git config --global difftool.ccdiff.cmd 'ccdiff --utf-8 -u -r $LOCAL $REMOTE'
$ git difftool SHA~..SHA
$ wget https://github.com/Tux/App-ccdiff/raw/master/Files/git-ccdiff \
-O ~/bin/git-ccdiff
$ perl -pi -e 's{/pro/bin/perl}{/usr/bin/env perl}' ~/bin/git-ccdiff
$ chmod 755 ~/bin/git-ccdiff
$ git ccdiff SHA
```
Of course you can use `curl` instead of `wget` and you can choose your own
(fixed) path to `perl` instead of using `/usr/bin/env`.
## LIMITATIONS
There is no provision (yet) for coping with double-width characters.
Large datasets may consume all available memory, causing the diff to fail.
Not all that can be set from the configuration files can be overruled by
command-line options.
## LICENSE
The Artistic License 2.0
Copyright (c) 2018-2026 H.Merijn Brand
( run in 1.200 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )