編集:StackOverflowの重複するQ&Aには、この質問に対する回答があります(Tianxiang Xiongがコメントで指摘したとおり)。
あなたが明らかに望ましい結果を得ることができないので、以下の私の答えは無駄です。それが提供する情報はある程度関連性があり、それでも誰かに興味深い情報を証明するかもしれないので、私はそれを削除するだけではありません。
個人的には、マージバッファーを直接編集するだけですが、標準的な要件がある場合にEmacsに何をすべきかを教えることができます。
+呼び出しediff-combine-diffs
:
バッファーAとBのN番目のdiff領域を結合し、その組み合わせをCに配置します。Nは接頭引数です。nilの場合、現在の差分領域を結合します。変数の指定に従って結合が行われます
ediff-combination-pattern
。
これは:
バッファーAとBの差分領域を結合するために使用されるパターン。値(STRING1 bufspec1 STRING2 bufspec2 STRING3 bufspec3 STRING4)
は、bufspecがシンボルA、B、または祖先である形式のリストでなければなりません
。たとえば、値がその場合、
'(STRING1 A STRING2 Ancestor STRING3 B STRING4)
結合されたテキストは次のようになります。
STRING1の
バリアントAから差分領域
STRING2の
祖先から差分領域
はstring3の
変異体Bから差分領域
STRING4
何もしていないと思う場合、実際には通常の競合マーカーを使用してバリアントを結合していることに注意してください。つまり、すでにAまたはBを選択している場合、デフォルトで+は元の競合を復元する方法です。
diff3
に関するマニュアルのセクションは役立つかもしれません。