PixConvert

無料オンライン差分チェッカーとテキスト比較

テキスト、Markdown、コードの2つのバージョンの違いを、左右表示またはインライン表示で確認できます。差分処理はクライアント側で行われ、サーバーには送信されません。

変更前

変更後

2つのテキストを比較する方法

1

2つのテキストを貼り付けます。

左のボックスに元のテキスト、右のボックスに変更後のテキストを入れてください。左右を逆に貼り付けた場合は「入れ替え」を使います。

2

「比較」をクリックします。

削除された行は赤、追加された行は緑になります。結果の上のカウンターには、追加・削除・変更なしの行数が表示されます。

3

表示を切り替えるか、コピーします。

分割表示とインライン表示を選ぶか、「差分をコピー」をクリックして変更内容をプレーンテキストで取得できます。「入力を編集」をクリックすると、テキストを修正してもう一度比較できます。

よくある質問

表示モード、行の変更、上限、差分のコピーについての回答です。

2つのテキストの違いを比較するにはどうすればよいですか?

元のテキストを左のボックスに、新しいバージョンを右のボックスに貼り付けて、「比較」をクリックします。削除された行は赤、追加された行は緑で表示され、カウンターに追加・削除・変更なしの行数が表示されます。

どの差分アルゴリズムを使っていますか?

jsdiffライブラリの行単位の差分を使っています。これはGitがデフォルトで使っているのと同じMyersアルゴリズムがベースです。元のテキストを変更後のテキストにするために必要な、削除と追加の行が最小になる組み合わせを見つけます。

空白や大文字・小文字の違いを無視できますか?

いいえ、今のところ対応していません。行末のスペース、スペースの代わりのタブ、大文字が1つ違うだけでも、その行は変更されたものとして扱われます。先に両方のテキストを整えてから比較してください。たとえば、コードエディターで行末のスペースを削除する方法があります。

なぜすべての行が変更されたと表示されるのですか?

すべての行で何かが変わっていて、多くの場合は目に見えないものです。タブでのインデント変更、エディターが追加した行末のスペース、折り返し幅の変更などが該当します。minifyされたコードは1行にまとまっているため、先に両方を整形してください。

行を追加しただけなのに、最後の行が変更扱いになるのはなぜですか?

元のテキストの最後の行の後ろに改行がない場合、その下に行を追加するとその行の末尾が変わるため、削除されて再び追加されたものとして表示されます。これを避けるには、両方のテキストの末尾でEnterキーを押してください。

変更された単語だけをハイライトしてくれますか?

いいえ。このチェッカーは行単位でマークするため、1語だけ変更しても、その行全体が削除され、続けて追加されたものとして表示されます。長い段落を比較するときは、両方のテキストで1文ずつ改行しておくと、変更された文が見つけやすくなります。

分割表示とインライン表示の違いは何ですか?

分割表示では、左に元のテキスト、右に変更後のテキストを表示し、変更箇所に色を付けます。インライン表示では1列にまとめ、変更されたブロックの前にマイナスまたはプラスを付けます。分割表示の左右の列は行ごとにそろっていないため、差分が長い場合はインライン表示のほうが読みやすくなります。

どのくらいの量のテキストを比較できますか?

決まった上限はありませんが、テキストが大きく、しかも大きく異なる場合は処理が遅くなります。同じコードをNodeでテストしたところ、1%だけ変更した10万行は0.3秒で終わりましたが、すべての行が異なる5,000行には約3秒かかりました。処理中はページが待機状態になります。

ファイルやPDFを比較できますか?

貼り付けたテキストのみ対応しています。ファイルのアップロード機能はないため、各ファイルを開いてテキストをコピーし、貼り付けてください。画像などのバイナリファイルは比較できません。PDFの場合は、先にテキストをコピーしてください。

差分をパッチとしてエクスポートできますか?

本物のパッチとしては出力できません。「差分をコピー」では、変更された行の前にマイナスまたはプラスを付けたプレーンテキストが取得できますが、@@ ヘッダーがないため git apply では読み込めません。また、空行はコピーに含まれないため、空白が重要な場合はご注意ください。

社内のコードや書類を貼り付けても安全ですか?

はい。比較はお使いのブラウザー内で実行され、どちらのテキストも送信されません。公開サイトでは、Google Analyticsにページビュー、比較にかかった時間、コピーやクリアを行ったという記録が送られますが、貼り付けた内容は送られません。

テキストとコードのための差分チェッカーの機能

jsdiffライブラリを使った行単位の比較です。2つの表示モードがあり、追加・削除・変更なしの行数も確認できます。

差分チェッカーの分割表示。左側は retries: 3 が赤で削除され、右側は retries: 5 と cache: true が緑で追加されています

テキストを左右に並べて比較

分割表示では、左に元のテキスト、右に変更後のテキストを表示します。削除された行は左側が赤、追加された行は右側が緑で表示され、それ以外はそのままです。

  • 左に元のテキスト、右に変更後のテキスト
  • 削除は赤、追加は緑で表示
  • 長い行はスクロールせず折り返し
今すぐ試す
差分チェッカーのインライン表示。行数は +2、-1、2 で、各変更が1つの列にマイナスまたはプラスで示されています

すべての変更を1列で確認

インライン表示では、差分全体を1列に並べます。削除されたブロックは赤、追加されたブロックは緑で表示し、各ブロックの先頭行の前にマイナスまたはプラスを付けます。カウンターで行数の合計も確認できます。

  • マイナスとプラスのブロック接頭辞
  • 追加・削除・変更なしの行数を表示
  • 再比較せずに表示を切り替え
今すぐ試す

行単位の比較

差分は行全体を単位として計算し、削除と追加の行数が最小になるMyers法を使います。1語だけ変更しても、その行全体が削除され、続けて追加されたものとして表示されます。

入れ替え、クリア、再編集

「入れ替え」は2つのボックスの内容を入れ替え、差分を逆方向で表示します。「クリア」は両方を空にします。比較後に「入力を編集」をクリックすると、テキストが入ったままボックスに戻ります。

差分をテキストとしてコピー

「差分をコピー」を使うと、変更された行の前にマイナスまたはプラス、それ以外の行の前に半角スペース2つを付けて、変更内容をクリップボードにコピーします。プレーンテキストであり、パッチファイルではありません。

テキストはお使いのデバイスに残ります

2つのテキストはお使いのブラウザー内で比較され、送信されることはありません。ツールが記録する利用統計は、比較にかかった時間と、コピーやクリアを行ったという記録だけです。

差分チェッカーの活用シーン

行単位の差分が「何が変わったのか」を教えてくれる3つの場面です。

コードレビュー

関数、設定ファイル、SQLクエリの2つのバージョンを貼り付けて、コミットやレビュー依頼の前に、どの行が変わったかを確認できます。

  • 設定ファイルの意図しない変更を見つける
  • 同じ関数の2つのバージョンを比較する
  • 貼り付けた修正を元のコードと照らし合わせる

ドキュメントの比較

契約書、規約、翻訳ファイルの2つの草稿を行ごとに比較できます。1文ずつ改行しておくと、変更箇所が見つけやすくなります。

  • 2つの契約書の草稿の変更点を見つける
  • 翻訳ファイルを比較して変更されたキーを探す
  • 規約ページを昨年の内容と照らし合わせる

ログ分析

2回の実行結果や2日分の出力を貼り付けて、新しく追加された行を探せます。先にタイムスタンプを取り除かないと、すべての行が変更されたものとして表示されます。

  • 2回のログ実行の間に出た新しいエラーを見つける
  • ログを比較する前にタイムスタンプを取り除く
  • 設定のダンプを比較して時間の経過によるずれを見つける