サクラエディタ実務ガイド
サクラエディタ diff の使い方:diff.exe準備と差分確認7手順
結論から言うと、サクラエディタで差分を見るときは、先に比較する旧ファイルと新ファイルを分け、diff.exe が使える状態か確認し、空白や改行を無視する条件を必要最小限にしてから差分表示を実行します。差分結果は保存ボタンを押す前の安全確認に使うものです。追加、変更、削除の記号だけで判断せず、文字コード、改行コード、タブ変換、空白無視の設定まで合わせて確認すると、設定ファイルやログの見落としを減らせます。
更新日 2026-07-30
先に結論:diff は保存前レビューとして使う
サクラエディタ diff は、編集中のファイルと別ファイルを行単位で比べ、追加、変更、削除を見つけるための機能です。公式ヘルプでも diff.exe が必要と説明されており、パッケージに含まれない環境では別途準備が必要です。まずは比較対象をコピーで守り、どちらを旧ファイルとして扱うか決め、差分なしのときも確認できる設定にしておくと、誤保存を避けやすくなります。
| 判断すること | おすすめの扱い | 見落としやすい点 |
|---|---|---|
| 旧ファイルと新ファイル | 元ファイルを旧、編集後を新として比較する | 逆にすると追加と削除の意味が反転します |
| diff.exe の有無 | sakura.exe と同じフォルダーにあるか確認する | パスに空白がある古い diff では失敗することがあります |
| 空白・空行の無視 | 理由があるときだけ有効にする | インデント変更を見逃す原因になります |
| 改行・文字コード | 差分前に別問題として切り分ける | 文字化けや CRLF/LF の違いは差分を増やします |
サクラエディタ diff でできること
サクラエディタの DIFF差分表示は、2つのテキストを行単位で比べる確認機能です。設定ファイルを少し直した後、ログの抽出結果を比べたいとき、マクロや正規表現置換の前後を見たいときに役立ちます。比較結果は編集作業そのものではなく、保存前に「どの行が増えたか、消えたか、変わったか」を読むための材料です。
一方で、複数フォルダー全体を比較したり、画像やバイナリの差分を扱ったり、競合を自動解決したりする用途には向きません。その場合は WinMerge などの専用比較ツールを使い、サクラエディタ diff は現在開いているテキストの軽いレビューとして使う方が現実的です。
diff.exe と比較ファイルを準備する
diff 機能を使う前に、まず diff.exe が利用できる状態か確認します。公式ヘルプでは diff.exe が Diff 機能に必要で、sakura.exe と同じフォルダーに置く必要があると説明されています。インストール形態や古い環境によっては含まれていないため、エラーが出る場合はサクラエディタ本体の場所と diff.exe の場所を先に見ます。
次に、比較するファイルを守ります。元ファイルを直接上書きせず、コピーを作り、編集後のファイルと並べておきます。Git 管理下なら差分が戻せる状態にしてから作業します。ファイル名に日付や before/after を入れると、DIFF 実行時に旧ファイルと新ファイルを取り違えにくくなります。
- 元ファイルを残すコピーまたはバージョン管理で戻せる状態にします。
- diff.exe を確認するサクラエディタ本体と同じフォルダーにあるか見ます。
- 旧・新を決める比較方向を決めてから DIFF を実行します。
- 結果を保存前に読む差分を確認してから本ファイルへ反映します。
空白・空行・タブのオプションを選ぶ
diff のオプションは便利ですが、最初から全部有効にしない方が安全です。空白無視を使うと見やすくなる一方で、インデントや区切り位置の変更を隠してしまいます。空行無視はログの余白確認には便利ですが、設定ファイルや Markdown の段落では意味のある空行まで軽く見えてしまうことがあります。
実務では、まず通常の差分を見てから、必要に応じて空白無視や TAB-SPACE 変換を試します。表示が大きく変わる場合は、差分そのものではなく空白、改行コード、タブ幅、文字コードの問題が混ざっている可能性があります。
| オプション | 向いている場面 | 注意点 |
|---|---|---|
| 大文字小文字同一視 | ログや識別子の表記ゆれを見る | コードやキー名では差が重要な場合があります |
| 空白無視 | 余計なスペースが多いテキストを読む | インデント変更を見逃します |
| 空行無視 | 空行だけのノイズを減らす | 段落や区切りの意味を消すことがあります |
| TAB-SPACE変換 | タブ幅の違いをならして読む | TSV や Makefile では危険です |
差分記号の読み方
差分結果では、追加、変更、削除の記号を行番号の近くで確認します。追加は編集中のファイルにだけある行、変更は両方にあるが内容が違う行、削除は相手ファイルにだけある行として読みます。記号を読む前に、いま開いているファイルが旧なのか新なのかを確認してください。
差分が多すぎるときは、内容が大きく変わったのではなく、改行コード、末尾空白、文字コード、タブ幅が原因で全体が変わって見えていることがあります。その場合は一度比較を止め、改行コード変換や文字コード確認を先に行う方が早いです。
安全な7手順の実例
たとえば設定ファイルのサーバー名を一括置換した後は、すぐ保存せずに差分を見ます。最初にコピーを作り、短い範囲で置換を試し、サクラエディタ diff で旧ファイルと比較します。変更行だけなら問題は小さいですが、ファイル全体が赤や緑に見える場合は改行コードが変わった可能性があります。
Grep 結果から複数ファイルを直した場合も同じです。1ファイルごとに差分を見て、空白無視を使う前の結果を残します。最後にオンラインのテキスト差分比較や文字数カウントで概要を確認すると、サクラエディタ本体で見落とした行数の増減も拾いやすくなります。
- 対象をコピーする元ファイルを保護し、戻せる状態にします。
- 置換や編集を小さく試すまず数行または1ファイルだけで動きを確認します。
- 旧ファイルを指定する比較方向を固定してから diff を実行します。
- 通常差分を読むオプションを足す前の素の差分を見ます。
- 必要な無視条件だけ足す空白や空行の無視は理由がある場合に限定します。
- 改行と文字コードを切り分ける全体差分になったら保存形式を確認します。
- 保存前に再確認する行数、差分範囲、戻し方を確認してから保存します。
保存前に見る差分レビューのチェックリスト
差分表示が出たら、最初に本当に内容が変わった行と、表示条件の違いで変わったように見える行を分けます。設定ファイルやログでは、1文字の空白、タブ、行末の空白だけでも意味が変わることがあります。逆に、改行コードやBOMだけが変わった場合は、本文の修正ではなく保存形式の問題として扱うほうが安全です。
レビューは上から順番に読むだけでなく、変更のまとまりごとに目的を確認します。見出し名の修正、キー名の変更、コメントアウトの追加、不要行の削除など、まとまりごとに理由を言える状態なら保存しやすくなります。理由を説明できない差分が残る場合は、いったん保存せず、旧ファイルをもう一度開いて比較条件を下げてください。
大量置換やマクロ実行の後は、サクラエディタ本体の diff とオンラインのテキスト差分比較を使い分けると確認が速くなります。短い抜粋はブラウザ上で比較し、実ファイルの最終確認はサクラエディタ側で行う、という分担にすると、貼り付けミスと保存対象の取り違えを減らせます。
チームで共有するファイルなら、差分を見た後に、何を変えたか、なぜ変えたか、戻すならどの行かをメモしておくと、後から grep や正規表現置換の結果を追いやすくなります。サクラエディタ diff はマージツールではありませんが、保存前の確認メモを作る用途には十分役立ちます。
| 確認点 | 見る場所 | 判断の目安 |
|---|---|---|
| 空白とタブ | 行頭、区切り、行末 | コードやTSVなら無視しすぎない |
| 改行コード | CRLF/LF が混ざる行 | 全文変更に見える時は先に統一する |
| 文字コードとBOM | 保存形式、文字化け、先頭付近 | 内容変更と形式変更を分けて扱う |
| 置換結果 | 同じ形で連続する差分 | 意図したパターンだけ変わっているか確認する |
diff が動かない・差分が多すぎるとき
diff が起動しないときは、diff.exe の場所、ファイル名、権限、パスに空白が含まれていないかを確認します。公式ヘルプは GNU diff 2.5/2.7 互換で DOS 版ではない WinCUI 版が必要と説明しています。古い配布物を使う場合は、パスの空白を扱えないものがある点にも注意します。
差分が多すぎる場合は、内容変更を疑う前に、改行コード、BOM、文字コード、末尾空白、タブ幅を見ます。とくに Windows の CRLF と Unix 系の LF が混在すると、少しの編集でも多くの行が変わったように見えます。差分を読みやすくするための無視オプションは、原因を切り分けた後に使うのが安全です。
よくある質問
よくある質問
サクラエディタ diff には diff.exe が必要ですか?
はい。公式ヘルプでは DIFF差分表示に diff.exe が必要で、sakura.exe と同じフォルダーに置く必要があると説明されています。
diff.exe はサクラエディタ本体に同梱されていますか?
公式ヘルプではパッケージに含まれないため別途入手が必要とされています。環境によって異なるため、最新の配布情報を確認してください。
空白無視を常に有効にしてもよいですか?
おすすめしません。空白やタブが意味を持つ設定ファイル、TSV、コードでは、重要な差分を見逃す可能性があります。
差分がファイル全体に出るのはなぜですか?
改行コード、文字コード、BOM、タブ幅、末尾空白が変わった可能性があります。本文の変更と分けて確認してください。
オンラインのテキスト差分比較とどう使い分けますか?
ブラウザ上の比較は短いテキストの事前確認に便利です。実ファイルの保存前レビューはサクラエディタ本体と diff.exe の結果も確認してください。