「文字レベル」差分で2つのバッファ間の差分を表示する方法


20

2つのバッファの違いを比較する場合、M-x ediff-buffers単語内で変更された特定の文字(つまり、「文字レベル」の差分)を示しません。最新の差分ツールのほとんどは、単語内の差分を表示します。

Emacsはデフォルトでこの重要な(または明らかに有用な)機能を欠いているようです。Emacsに文字ごとにdiffを表示させるにはどうすればよいですか?

ここM-x ediff-buffers diff1 diff2でを更新しemacs -Qて、私のテーマが邪魔にならないようにするために使用します: ここに画像の説明を入力してください

Meldに貼り付けた同じテキストを次に示します。 ここに画像の説明を入力してください


この問題は、使用しているテーマに関連しているようです。バニラEmacs(24.4)では、個々の行の違いが強調されています。あなたは、Emacs経由を開始することでこれを確認することができますemacs -Qし、呼び出し元ediff-buffersdiff1してdiff2通常どおりに。
itsjeyd

emacs -Q上記で追加したで実行してみました。また、質問を修正して、行内の差分ではなく文字レベルの差分に対処しました。
-modulitos

回答:



6

この機能は、Ediffでは「リファイン」と呼ばれます。ヒット*すると、現在のハンクを調整したり@、別のハンクに移動するたびに自動調整をオンにしたりできます。


1
行内の差分ではなく、文字レベルの差分に対処するように質問を修正しました。Emacsに単語内の差分を表示させることは可能ですか?
-modulitos
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.