Total Commanderの内部diffをカスタムツールに置き換えることはできますか?


28

Total Commanderの内部diff コンテンツの比較とDirsの同期左右の比較で使用されるコンテンツの比較があまり好きではないので、WinMergeやKDiff3のようなものを使用したいと思います。

これは、左右のペインでマークされたファイルへのパスを使用して外部プログラムを起動することは可能ですか?これにより、Compare by contentが解決されます。それを解決する他の方法はありますか?ファイルの内容を比較するときに同じことを行うように、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(left-vs-rightディレクトリを比較)

コマンド: %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の効果は何ですか?
ジョエル

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のように「内容で比較」の2番目のパラメータ
marlar

1

Visual Studio Codeを外部diffツールとして使用したかったため、この質問に答えました。

VS Codeは主にdiffツールではないため、2つのファイル名をパラメータとして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.