2.3 差分を左右に並べて表示する
diffは、2つのファイルの差分を左右に並べた一覧を出力できます。ファイルは2列に表示され、その間に溝に相当する欄があります。この欄には、次のいずれかの記号が入ります。
- 空白
対応する行は共通です。つまり、行が同一であるか、いずれかの--ignoreオプションによって差分が無視されています(空白やタブの間隔の差分を抑制するを参照)。
- ‘|’
対応する行は異なり、両方とも完全な行であるか、両方とも不完全な行です。
- ‘<’
ファイルに差分があり、この行は最初のファイルだけに含まれます。
- ‘>’
ファイルに差分があり、この行は2番目のファイルだけに含まれます。
- ‘(’
この行は最初のファイルだけに含まれますが、差分は無視されています。
- ‘)’
この行は2番目のファイルだけに含まれますが、差分は無視されています。
- ‘\’
対応する行は異なり、最初の行だけが不完全です。
- ‘/’
対応する行は異なり、2番目の行だけが不完全です。
通常、そこに含まれる行が不完全な場合に、かつその場合に限って、出力行も不完全になります。不完全な行を参照してください。ただし、出力行が2つの異なる行を表す場合、一方だけが不完全なことがあります。この場合、出力行は完全な行になりますが、最初の行が不完全なら列間の欄に「\」、2番目の行が不完全なら「/」が表示されます。
左右に並べる書式が最も読みやすいこともありますが、制限があります。通常よりもずっと幅広い出力になり、収まらない長い行は切り詰められます。また、通常以上に出力の位置合わせに依存するため、可変幅フォント、標準とは異なるタブ位置、または非表示文字を使うと、特に見づらくなります。
sdiffコマンドを使うと、左右に並べた差分を対話的にマージできます。ファイルのマージについて詳しくは、sdiffによる対話的なマージを参照してください。