티스토리 뷰

Application/Linux

vim 이야기: 두개의 file 비교하기

알 수 없는 사용자 2006. 6. 5. 12:27
Vim diff 잘써보기

두개의 파일을 비교하는 방법은







코드:
vimdiff a.c b.c

이렇게 바로 실행하거나,







코드:
1) vim a.c
2) :diffs b.c (:diffsplit b.c 로도 사용할 수 있습니다.)
3) ^wJ

이렇게 수평으로 열어서 세로로 맞출 수도 있구요.







코드:
1) vim a.c
2) :vert diffs b.c (:vertical diffsplit b.c 로도 사용할 수 있습니다.)

이렇게 한 번에 열수도 있습니다.







코드:
1) vim a.c
2) :sp b.c
3) :diffthis
4) ^ww
5) :diffthis

위 방법은 두 개를 열어 놓고, diff 에 참여시키는 방법입니다.

vimdiff 는 vim의 softlink에 불과한데, vim은 구동시에 어떤 이름으로 시작되느냐에 따라 readonly, vi compatible, diff mode 등으로 전환되는 trick을 가지고 있습니다.

이상은 어떻게 하면 비교할 파일을 열어서 보는 다양한 방법을 설명한 것이고, 다음은 비교하는 파일을 편집하는 것을 알아 보겠습니다.

비교하는 파일의 편집이란, 한쪽의 내용을 다른쪽으로 copy하는 것을 말합니다.







코드:
:diffget:diffset

명령입니다. 현재 cursor가 위치한 반대편의 내용으로부터 가져오거나 보내는 것이지요.

단, 복사하자 마자 같은 내용이 되기때문에 diff 화면에서는 사라집니다.
안보이는 거 보이게 하려면

zR
zM

을 사용하세요...

간단한 팁.. 정리해보면..

:diffsplit
:diffget
:diffput

세가지 명령어와

:vertical diffsplit
:diffthis

정도 알아 두시면 더 유용합니다.

^wJ

등에 대해서는 Vim Window Split에서 설명한바있습니다.

즐거운 vim 되시길.