Interfejs Ediff ma +przycisk, ale wydaje się, że nic nie robi (minibufor niezmiennie pokazuje „zero” po jego naciśnięciu), myślałem, że ten przycisk służy do używania obu wariantów w buforze wyników.
W każdym razie pierwotne pytanie brzmi: jak sprawić, by Ediff rozwiązał konflikt scalania, umieszczając treść z obu buforów A i B w buforze C (wiem, że mogę po prostu edytować C, ale mam nadzieję, że można to zrobić łatwiej).
Załóżmy, że plik A jest następujący:
Ta sama linia
Inna linia
Ta sama linia
podczas gdy plik B to:
Ta sama linia
Kolejna linia
Ta sama linia
Chcę, aby plik C , wynik scalenia A z B, wyglądał tak:
Ta sama linia
Inna linia
Kolejna linia
Ta sama linia
diff3
może pomóc .Odpowiedzi:
Zobacz tę odpowiedź StackOverflow .
From @ killdash9 :
źródło
Edit: duplikat Q & A na StackOverflow ma odpowiedzi na to pytanie (jak podkreślił Tianxiang Xiong w komentarzach).
Moja odpowiedź poniżej jest bezużyteczna, ponieważ najwyraźniej nie można uzyskać pożądanego rezultatu w ten sposób. Ja nie tylko usuwając go, ponieważ informacje to nie dać się nieco znaczenie, a może jeszcze okazać się ciekawą informację do kogoś.
Osobiście po prostu edytuję bufor scalania bezpośrednio, ale możesz nauczyć Emacsa, jak postępować, jeśli masz standardowe wymagania.
+połączenia
ediff-combine-diffs
:który jest:
Zauważ, że kiedy myślisz, że nic nie robi, to w rzeczywistości łączy warianty przy użyciu normalnych znaczników konfliktu. tzn. jeśli już wybrałeś A lub B, domyślnie +jest to sposób na przywrócenie pierwotnego konfliktu.
źródło
ediff-combination-pattern
usunięciu tradycyjnych oznaczeń konfliktu używanych domyślnie? Naprawdę chciałbym zachować ten konflikt, dopóki go nie rozwiążę, używając dowolnej kombinacji różnic z scalonych plików.ediff-combination-pattern
niestandardowy wzorzec, a następnie wywołujeediff-combine-diffs
.