GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

jeffkaufman

icdiff – 改良された色付きの差分

投稿日:

改良された色付きの差分 http://www.jefftk.com/icdiff

Icdiff

色付き差分の改善

インストール

最新の icdiffバイナリをダウンロードし、あなたのPATHに入れてください。

あるいは、pipでインストールしてください:

  pip install git+https://github.com/jeffkaufman/icdiff.git

それはまた、 Nixを使用してインストールすることができます

  nix-env -i icdiff

使用法

icdiff [options] left_file right_file

ファイル間の相違点を2列で表示します。

オプション

  --version             show program's version number and exit
  -h, --help            show this help message and exit
  --cols=COLS           specify the width of the screen. Autodetection is Unix
                        only
  --encoding=ENCODING   specify the file encoding; defaults to utf8
  -E MATCHER, --exclude-lines=MATCHER
                        Do not diff lines that match this regex. Not
                        compatible with the 'line-numbers' option
  --head=HEAD           consider only the first N lines of each file
  -H, --highlight       color by changing the background color instead of the
                        foreground color.  Very fast, ugly, displays all
                        changes
  -L LABELS, --label=LABELS
                        override file labels with arbitrary tags. Use twice,
                        one for each file
  -N, --line-numbers    generate output with line numbers. Not compatible with
                        the 'exclude-lines' option.
  --no-bold             use non-bold colors; recommended for solarized
  --no-headers          don't label the left and right sides with their file
                        names
  --output-encoding=OUTPUT_ENCODING
                        specify the output encoding; defaults to utf8
  -r, --recursive       recursively compare subdirectories
  --show-all-spaces     color all non-matching whitespace including that which
                        is not needed for drawing the eye to changes.  Slow,
                        ugly, displays all changes
  --tabsize=TABSIZE     tab stop spacing
  -u, --patch           generate patch. This is always true, and only exists
                        for compatibility
  -U NUM, --unified=NUM, --numlines=NUM
                        how many lines of context to print; can't be combined
                        with --whole-file
  -W, --whole-file      show the whole file instead of just changed lines and
                        context
  --strip-trailing-cr   strip any trailing carriage return at the end of an
                        input line
  --color-map=COLOR_MAP
                        choose which colors are used for which items. Default
                        is --color-map='add:green_bold,change:yellow_bold,desc
                        ription:blue,meta:magenta,separator:blue,subtract:red_
                        bold'.  You don't have to override all of them:
                        '--color-map=separator:white,description:cyan

Gitで使う

それがどのように見えるかを確認するには、

git difftool --extcmd icdiff

これをGitで使うツールとしてインストールするには、 git-icdiffをあなたのPATHにコピーして実行してください:

git icdiff

Gitの設定でgit-icdiffを設定することができます:

git config --global icdiff.options '--highlight --line-numbers'

Subversionで使用する

それを試してみるには:

svn diff --diff-cmd icdiff

Mercurialでの使用

~/.hgrc以下を追加してください:

[extensions]
extdiff=

[extdiff]
cmd.icdiff=icdiff
opts.icdiff=--recursive --line-numbers

または、より詳細な設定手順を確認してください

開発環境の設定

virtualenvを作成し、devの依存関係をインストールします。 通常の使用には必要ありません。

virtualenv venv
source venv/bin/activate
pip install -r requirements-dev.txt

テストの実行

./test.sh python2
./test.sh python3

リリースを作る

  • 前回のリリース以降のすべての変更を含むChangeLogの更新
  • __version__icdiff更新
  • テストを実行し、テストが合格することを確認します。
  • git tag release-${version}
  • git push origin release-${version}

ライセンス

このファイルは、 ライセンスの下にあるdifflib.HtmlDiffから派生したものです。 私はここで同じライセンスの下で私の変更をリリースします。 これはGPL互換です。







-jeffkaufman

執筆者:

jeffkaufman

icdiff – 改良された色付きの差分

投稿日:

(さらに…)







-jeffkaufman

執筆者: