Total Commander의 내부 diff를 사용자 정의 도구로 바꿀 수 있습니까?


28

내가 총 사령관의 내부 사랑하는처럼 정말하지 않기 때문에 비교 내용 에 사용 된 내용으로 비교 및 동기화 DIRS는& 오른쪽에서 왼쪽으로 비교 , 내가 WinMerge를 또는 KDiff3 같은 다른 사용 무언가를 원한다.

왼쪽 및 오른쪽 창에 표시된 파일 경로가있는 외부 프로그램을 시작할 수 있습니까? 그러면 컨텐츠 별 비교 가 해결 됩니다 . 다른 방법으로 해결할 수 있습니까? Synchronize Dirs를 제어 하여 파일 내용을 비교할 때와 동일하게 할 수 있습니까?

외부 diff 프로그램을 사용하여 Total Commander에서 쉽게 diff를 만드는 다른 제안이 있습니까?

답변:


34

이 작업을 수행하는 방법은 여러 가지가 있습니다 (여기서는 BeyondCompare 를 예로 사용 하지만이 범주에서 찾은 것이 가장 좋지만 솔루션은 WinMerge 에서도 잘 작동합니다 ).

A) 기본적으로 wincmd.ini아래에서 편집 %USERPROFILE%\AppData\Roaming\GHISLER\하고 다음과 같이 추가하십시오.

[구성]
CompareTool = C : \ Program Files \ Shareware \ FileCmp \ BeyondCmp \ BCompare.exe

이제 모든 비교는 내부 도구 대신이 앱을 사용하여 이루어집니다.


B) TotalCmd의 StartMenu (명령 "시작 메뉴 변경 ...")를 사용하여 다음 명령을 추가하십시오.

표제:

BC (왼쪽 대 오른쪽 디렉터리 비교)

명령: %YourPath%\BeyondCmp\BCompare.exe

매개 변수 : %X%p %X%t


표제:

BC (커서 아래의 현재 파일과 다른 패널의 동일한 파일 비교)

명령: %YourPath%\BeyondCmp\BCompare.exe

매개 변수 : "%X%p%x%n" "%X%t%x%n"


표제:

BC (왼쪽의 현재 파일과 오른쪽의 현재 파일 비교)

명령: %YourPath%\BeyondCmp\BCompare.exe

매개 변수 : "%X%p%n" "%X%t%m"


% X와 % x의 효과는 무엇입니까?
Joel

1
% X이 매개 변수 뒤의 다음 매개 변수를 소스 / 대상 대신 왼쪽 / 오른쪽으로 해석합니다 : % P, % p (왼쪽 경로), % T, % t (오른쪽 경로), % N, % n (왼쪽 이름), % M, % m (오른쪽 이름), % S, % s (왼쪽 선택), % R, % r (오른쪽 선택)
TheNewbie

% x이 매개 변수 다음에 다음 매개 변수를 소스 / 대상으로 다시 해석합니다. 예 : % X % P % x % P는 호출 된 프로그램에 왼쪽 및 소스 경로를 보냅니다
TheNewbie

옵션 A CompareTool의 경우 wincmd.ini 파일의 시작 부분 근처에 어딘가에 추가 한 경우에만 (v8.51a) 작동했습니다 . 나는 이것에 선행 해야하는 정확한 설정을 모른다. 그래서 가장 간단한 것은 파일의 시작 부분에 놓는 것입니다.
TLama

1
TC 9부터는 % C1 % C2를 사용하여 내부 비교 도구의 작동 방식을보다 효과적으로 에뮬레이트 할 수 있습니다. % C1 "컨텐츠 별 비교"의 첫 번째 매개 변수와 같은-% C2 "컨텐츠 별 비교"의 두 번째 매개 변수와 같은
marlar

1

Visual Studio Code를 외부 diff 도구로 사용하고 싶기 때문에이 질문에 맞서게되었습니다.

VS 코드는 기본적으로 diff 도구가 아니기 때문에 매개 변수로 두 개의 파일 이름을 사용하여 exe 파일을 호출 할 수는 없습니다. 대신 옵션 --diff또는 -d지정해야합니다.

WINCMD.INI를 편집 할 때 중요합니다. Comparetool 줄은 code.exe 및 diff-option 경로를 가져와야합니다.

[Configuration]
Comparetool="C:\Program Files\Microsoft VS Code\Code.exe" --diff
...
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.