Linux

vimdiff

뭉기 2012. 12. 4. 10:09

실행 : vimdiff 파일들  or  vim -d 파일들



do - 다른 윈도우의 변경 사항을 현재 윈도우로 가져오기
dp - 현재 윈도우의 변경 사항을 다른 윈도우로 넣기
]c - 다음 변경 사항으로 이동
[c - 이전 변경 사항으로 이동
Ctrl W + Ctrl W - 다른 윈도우로 이동

다른 윈도우로 이동할 때는 Ctrl + W <방향키> 를 이용할 수도 있다.


그냥 보기만 할때는 간편하게 sdiff 사용.




커맨드창에서 두개의 파일을 비교 하는 방법은 

vimdiff a.c b.c

이렇게 바로 실행 할 수도 있고, 아래와 같이 실행 할 수도 있따.(수평 분할)

vim a.c
:diffs b.c   (:diffsplit b.c)

수직 분할하려 비교 하려면 아래와 같이 명령어를 사용하면 된다.
vim a.c
:vert diffs b.c   (:vertical diffsplit b.c)

이미 열러 있는 두개의 파일을 비교 할때는 아래 처럼 하면 된다.
vim a.c
:sp b.c
:diffthis 

실제로 vim은 실행시 몇 가지 모드 중 하나로 동작 하는 것이다. 즉, 실행시 readonly, vi compatible, diff mode등으로 전환 된다.


이제 부터는 비교하고 있는 파일의 내용을 편집하는 것을 알아 보도록 하자.
비교하는 파일의 편집이란, 한쪽의 내용을 다른쪽으로 copy하는 것이다.
:diffget
:diffset

위의 명령어는 현재 커서가 위치한 반대편의 내용으로 부터 가져오거나 보내는 것이다.