vim 버퍼에 변경한 내용을 별도의 파일로 저장하고 diff를 사용하지 않고 원본 파일에 패치 파일로 저장할 수 있는 방법이 있나요?
답변1
이 명령을 사용하면 플러그인 없이 이 작업을 수행할 수 있으므로 w
쉘 명령에서 버퍼 내용을 사용할 수 있습니다.
:w !diff -au "%" - > changes.patch
( %
편집 중인 파일의 경로로 대체됨, -
표준 입력에서 버퍼 읽기)
답변2
diff
다음 구문을 사용하여 버퍼를 필터링할 수도 있습니다 %!
.
:%! diff -au "%" -
readonly
이렇게 하면 디스크에 기록하는 대신 차이점으로 버퍼가 채워집니다. 실수로 원본 파일을 손상시키지 않도록 설정해야 할 수도 있습니다. (OTOH, 파일이 버전 제어 대상이므로 심각한 문제는 아닙니다.) ,옳은?). 물론 반대 명령을 사용하면 도움이 됩니다.
:%! patch -o - "%"
이렇게 하면 diff가 수정된 파일로 다시 변환됩니다.