web-dev-qa-db-ja.com

diff to html(diff2html)プログラム

特定のdiff/patchファイルから静的なhtmlページを生成する「htmlとの差分」プログラムを探しています。

もちろんグーグルで検索しましたが、いくつかのスクリプトを除けば、「実際のプロジェクト」はありません(たとえば、Debian/Ubuntuにはパッケージがありません)。

私は何かを見逃しましたか?何かお勧めできますか?

52
blueyed

diff2html.py を使用すると、統一されたdiff入力から、静的htmlページにside-by-side diffを作成できます。スクリプトはpythonで書かれています。

cat foo.diff | python diff2html.py > foo.html
27
zer0

pygments は、diff(および他の多くの言語)の構文の強調表示を備えており、ライブラリまたはコマンドラインプログラムとして使用できます。それはあなたが探している種類のものですか?そうでない場合は、質問を明確にしてください...

24
puetzk

以下のラインに沿ったもの:

vim test.diff -c TOhtml -c ":saveas test.html" -c ":q" -c ":q"

うまく機能し、viで配色を変更することで、差分の配色を変更できます。

18
Daniel Zinn
9
bithead
9
ax.

http://prettydiff.com/ を試しましたか。空白とコメントの違いは無視されます。

[免責事項:これは私のサイトです]

6
austin cheney

また、Vimには 2html があり、これは非常にうまく機能します。組み込みです。Vimが構文を強調する方法を知っているファイルを受け取り、正しいフォーマットでHTMLを作成します。使用するには、目的のファイルをVimで開き、2htmlスクリプトをソースします。変換されたファイルは、保存可能な新しいバッファーで開かれます。ここに:

vim example.diff

そしてVimで、

:so /usr/share/vim/vim72/syntax/2html.vim
:wqa
4

Niceサイドバイサイドdiffを生成するのに最適なのは、次のスクリプトです。

http://tools.ietf.org/tools/rfcdiff/

RFCで使用するように設計されていますが、任意のテキストファイルで機能します。

このプロジェクトには素晴らしい出力もありますが、Subversionなしで使用できるかどうかはわかりません: http://code.google.com/p/coderev/

3
Andy Longwill

Emacsでは htmlize を使用しています。 Emacsには付属しておらず、Emacsを使用していることを前提としています。 EmacsのDiffモードの構文強調表示に依存しています。一度に1つのファイルを実行する場合にのみ有効です。 私のために正しいことをします

3
ashawley

coderev が見つかりました。デモは素敵に見えます

3
ren