このツールについて
長い文字列に対するアサーションが失敗すると、テストランナーはたいてい両方の値を出力するだけで、違いを見つけるのはあなた任せです。左に期待値、右に実際の値を貼り付ければ、何が変わったのかが正確にわかります。行モードはログ、設定ファイル、feature ファイルに、単語モードは文章やエラーメッセージに、文字モードは 1 つだけ紛れ込んだスペース、クォート、目に見えない文字を見つけるのに適しています。差分には jsdiff ライブラリ(git と同じ Myers アルゴリズム)を使い、すべてブラウザ内で動作します。Windows(CRLF)と Unix(LF)の改行コードは同じものとして扱います。
使い方
- 左に元のテキスト(期待される出力など)、右に変更後のテキストを貼り付けるか、「Load sample」(サンプルを読み込む)をクリックします。
- 「Lines」(行)「Words」(単語)「Characters」(文字)から選び、チェックにとって重要でない場合は「Ignore whitespace」(空白を無視)や「Ignore case」(大文字小文字を無視)にチェックを入れます。
- 左右並列か統合表示で確認するか、「Patch」(パッチ)に切り替えて標準的な unified diff をコピー・ダウンロードします。
テキスト差分チェッカー のよくある質問
行モードで「Ignore whitespace」(空白を無視)は何をしますか?
両端の空白を取り除き、連続するスペースやタブを 1 つにまとめてから行を比較するため、インデントや二重スペースは変更として数えられなくなります。空行と改行は引き続き数えられます。
2 つの行が同じに見えるのに変更として表示されるのはなぜですか?
たいていは目に見えない文字が違っています。末尾のスペース、スペースの代わりのタブ、ノーブレークスペース、ゼロ幅スペースなどです。文字モードに切り替えて確認するか、テスト文字列生成ツールの「Measure any string」(任意の文字列を測定)欄にテキストを貼り付けてエスケープされた形を確認してください。
パッチ出力は git apply と互換性がありますか?
3 行のコンテキストとプレースホルダーのファイル名(original と changed)を持つ標準的な unified diff です。patch などのツールはそのまま受け付けます。git apply で使う場合は、--- と +++ ヘッダーのファイル名を実際のパスに合わせて編集してください。