DIFF TOOLS
This repository includes diff related tools including sdif
, cdif
,
and watchdiff
commands. These works as a post-processor for diff
command to support visualizing the output.
They can be used along with git
command and provide convenient
output for ANSI color terminals.
sdif
and cdif
are tuned to handle Asian multi-byte characters,
especially Japanese text. There are some other tools which provide
similar capability, but most of them are not appropriate to process
document data. cdif
provide word-by-word difference rather than
character-by-character, which make the output much easy to read. It
also support a mecab
command as a syllable tokenizer.
CONTENTS
Tools
Images
Repository
NAME
App::sdif - sdif and family tools, cdif and watchdiff
SYNOPSIS
sdif f1 f2
diff -c f1 f2 | cdif
git diff | sdif -n
watchdiff df
DESCRIPTION
sdif-tools are composed by sdif and related tools including cdif and watchdiff.
sdif prints diff output in side-by-side format.
cdif adds visual effect for diff output, comparing lines in word-by-word, or character-by-character bases.
watchdiff calls specified command repeatedly, and print the output with visual effect to emphasize modified part.
See individual manual of each command for detail.
INSTALL
CPANM
$ cpanm App::sdif
GIT
Those are sample configurations using sdif family in git environment. You need to install mecab command to use –mecab option.
~/.gitconfig
[pager]
log = sdif | less
show = sdif | less
diff = sdif | less
~/.sdifrc
option default -n --margin=4
~/.cdifrc
option default --mecab
~/.profile
export LESS="-cR"
export LESSANSIENDCHARS="mK"
You can write everything in ~/.gitconfig:
[pager]
log = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
show = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
diff = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
SEE ALSO
AUTHOR
Kazumasa Utashiro
LICENSE
Copyright 1992- Kazumasa Utashiro.
These commands and libraries are free software; you can redistribute it and/or modify it under the same terms as Perl itself.