Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
COLORDIFF(1)			 User Commands			  COLORDIFF(1)

       colordiff - a tool to colorize diff output

       colordiff [diff options]	[colordiff options] {file1} {file2}

       colordiff is a wrapper for diff and produces the	same output as diff
       but with	coloured syntax	highlighting at	the command line to improve
       readability. The	output is similar to how a diff-generated patch	might
       appear in Vim or	Emacs with the appropriate syntax highlighting options
       enabled.	The colour schemes can be read from a central configuration
       file or from a local user ~/.colordiffrc	file.

       colordiff makes use of ANSI colours and as such will only work when
       ANSI colours can	be used	- typical examples are xterms and Eterms, as
       well as console sessions.

       colordiff has been tested on various flavours of	Linux and under
       OpenBSD,	but should be broadly portable to other	systems.

       Use colordiff wherever you would	normally use diff, or instead pipe
       output to colordiff:

       For example:

	   $ colordiff file1 file2
	   $ diff -u file1 file2 | colordiff

       You can pipe the	output to 'less', using	the '-R' option	(some systems
       or terminal types may get better	results	using '-r' instead), which
       keeps the colour	escape sequences, otherwise displayed incorrectly or
       discarded by 'less':

	   $ diff -u file1 file2 | colordiff | less -R

       If you want to force disable colour escape sequences (for example pipe
       the output to patch), you can use option	'--color=no' to	do so:

	   $ diff -u file1 file2 | colordiff --color=no	| patch	-p0 -d another-working-dir

       If you have wdiff installed, colordiff will correctly colourise the
       added and removed text, provided	that the '-n' option is	given to

	   $ wdiff -n file1 file2 | colordiff

       You may find it useful to make diff automatically call colordiff. Add
       the following line to ~/.bashrc (or equivalent):

	   alias diff=colordiff

       Any options passed to colordiff are passed through to diff except for
       the colordiff-specific option 'difftype', e.g.

	   colordiff --difftype=debdiff	file1 file2

       Valid values for	'difftype' are:	diff, diffc, diffu, diffy, wdiff,
       debdiff;	these correspond to plain diffs, context diffs,	unified	diffs,
       side-by-side diffs, wdiff output	and debdiff output respectively. Use
       these overrides when colordiff is not able to determine the diff-type

       Alternatively, a	construct such as 'cvs diff SOMETHING |	colordiff' can
       be included in ~/.bashrc	as follows:

	   function cvsdiff () { cvs diff $@ | colordiff; }

       Or, combining the idea above using 'less':

	   function cvsdiff () { cvs diff $@ | colordiff |less -R; }

       Note that the function name, cvsdiff, can be customized.

       By default colordiff returns the	exit code of the underlying diff
       invocation (if there is one), but there are some	circumstances where it
       is useful to force colordiff's exit code	to be zero: to do this use the
       option '--fakeexitcode':

	   colordiff --fakeexitcode ...

	   Central configuration file. User-specific settings can be enabled
	   by copying this file	to ~/.colordiffrc and making the appropriate

	   Alternate configuration template for	use with terminals having
	   light backgrounds. Copy this	to /usr/local/etc/colordiffrc or
	   ~/.colordiffrc and customize.

	   Alternate configuration template for	use with terminals having dark
	   backgrounds,	with colour defaults set to match the output of	'git
	   diff'. Copy this to /usr/local/etc/colordiffrc or ~/.colordiffrc
	   and customize.

       Bug reports and suggestions/patches to please.

       Dave Ewart
	   colordiff author and	Debian packager

       Graham Wilson
	   Manual page and XML source author

       Colin Tuckley
	   Debian package sponsor

colordiff			  05/21/2015			  COLORDIFF(1)


Want to link to this manual page? Use this URL:

home | help