Scenariusz: Otworzyłem Vima i wkleiłem jakiś tekst. Otwieram drugą kartę :tabe
i wklejam tam jakiś inny tekst.
Cel: Chciałbym mieć trzecią zakładkę z wyjściem równoważnym zapisywaniu obu tekstów do plików i otwieraniu ich za pomocą vimdiff
.
Najbliższe, jakie mogę znaleźć, to "porównanie bieżącego bufora z plikiem", ale nie diff
dwa otwarte, ale niezapisane bufory.
Odpowiedzi:
Proponuję otworzyć drugi plik w tej samej zakładce zamiast nowej.
Oto, co zwykle robię:
:vnew
Polecenie dzieli bieżący widok w pionie, dzięki czemu można otworzyć drugi plik istnieje. Polecenie:diffthis
(lub short:difft
:) jest następnie stosowane do każdego widoku.źródło
vimdiff file1.txt file2.txt
i znokautować się.edit fileN
elementy mogą być zastąpione tylko wklejanie z, co pozwala diff dwóch fragmentów tekstu bez wklejania każdy do pliku tmp (coś że Meld pozwala zrobić, ale wizualne narzędzia diff na Mac są pozbawione) bufora. To działało w MacVimie dla mnie po wyjęciu z pudełka.Proponuję spróbować : diffthis lub : diffsplit
źródło
:vert diffsplit
sprawia, że widok różnic jest bardziej tradycyjny niż bez:vert
:set scrollbind
w obu.:diffsplit
, otrzymam dwa połączone bufory.Gdy masz dwa pliki otwarte w podziale pionowym, uruchom
:windo diffthis
źródło
:diffoff
aby wyłączyć tryb różnicowyZawartość wszystkich zakładek znajduje się wewnątrz buforów. Spójrz na bufory:
Znajdź odpowiednią liczbę dla treści, która powinna być porównywana z obecną zawartością karty.
Otwórz bufor w bieżącej karcie (np. Bufor numer 4)
Lub zrób dla widoku pionowego:
Następnie możesz łatwo porównać zawartość za pomocą
Jeśli zakończyłeś analizę różnic, możesz wprowadzić:
źródło