문자 적으로 차이


9

두 텍스트 파일 사이에서 문자 순으로 diff를 수행 할 수있는 안정적인 도구 (기존 도구의 옵션 / 플러그인 : vimdiff, diff 등)가 있습니까?

두 파일 사이의 가장 긴 공통 하위 시퀀스를 강조 표시하고 싶습니다. 이를 위해 고전적인 다항식 시간 알고리즘 이 있지만 표준 도구는 한 줄 씩만 작동하는 것으로 보입니다.

답변:


2

좋은 나이 cmp는 문자 적으로 차이가 있습니다. 약 40 년 동안 UNIX의 일부였습니다. https://www.freebsd.org/cgi/man.cgi?query=cmp&apropos=0&sektion=0&manpath=Unix+Seventh+Edition&arch=default&format=html

불행히도, 그것은 첫 번째 다른 캐릭터에서 멈 춥니 다.이 답변이 당신에게 유용한 지 모르겠습니다.


감사. 나는 cmp -bl ...이 답변을 찾은 후 잠시 도망 갔으며 여러 차이점과 위치를보고했습니다. 내 버전은 cmp (GNU diffutils) 3.6입니다.
Dzamo Norton

2

설치 diffchar( Github의 링크 플러그인 자동 로더를 사용하는 경우). 플러그인이 활성화 된 v4.7부터 Vim은 더 정확한 차이점을 자동으로 표시합니다.

여기에 이미지 설명을 입력하십시오

  • F7(기본 키맵)을 눌러 일반 플러그인과 플러그인간에 전환 할 수 있습니다 . 다음으로 재 할당 :

    nmap <silent> <key> <Plug>ToggleDiffCharAllLines
    

    <key>적절한 키 코드로 교체하십시오 .

  • 더 많은 색상을 사용할 수 있습니다 :

    let g:DiffColors=100
    

불행히도, 이것은 여러 줄에서 작동하지 않으므로 가장 잘 말할 수 있습니다. 그러나 공통 영역은 강조 표시 되지 않은 상태로 유지됩니다 (너무 길면 접히는 경우도 있음).


내 Vi 및 Vim Stack Exchange 게시물 에서 복사 했습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.