¿Puedo reemplazar la diferencia interna en Total Commander con una herramienta personalizada?

28

Como realmente no me gusta la diferencia interna Compare Total de Total Commander utilizada en Comparar por contenido y Sincronizar DirsComparar izquierda y derecha , quiero usar algo más como WinMerge o KDiff3.

¿Es posible iniciar un programa externo con las rutas a los archivos marcados en el panel izquierdo y derecho? Eso resolvería Comparar por contenido . ¿Alguna otra forma de resolverlo? ¿Puedo controlar Synchronize Dirs para que haga lo mismo cuando comparo el contenido del archivo allí?

¿Alguna otra sugerencia para hacer diferencias fácilmente en Total Commander con un programa de diferencias externo?

Joel
fuente

Respuestas:

34

Hay muchas maneras de hacer esto (aquí estoy usando BeyondCompare como ejemplo, es el mejor que he encontrado en esta categoría, pero la solución también funciona bien con WinMerge ):

A) Edite wincmd.inidebajo %USERPROFILE%\AppData\Roaming\GHISLER\de forma predeterminada y agregue algo como esto:

[Configuración]
CompareTool = C: \ Archivos de programa \ Shareware \ FileCmp \ BeyondCmp \ BCompare.exe

Ahora todas las comparaciones se realizan utilizando esta aplicación en lugar de la herramienta interna.


B) Utilizando StartMenu de TotalCmd (comando "Cambiar menú de inicio ..."), agregue estos comandos:

Título:

BC (Comparar directorios izquierda-derecha)

Mando: %YourPath%\BeyondCmp\BCompare.exe

Parámetros: %X%p %X%t


Título:

BC (Comparar el archivo actual debajo del cursor frente al mismo archivo en el otro panel)

Mando: %YourPath%\BeyondCmp\BCompare.exe

Parámetros: "%X%p%x%n" "%X%t%x%n"


Título:

BC (Comparar el archivo actual en la izquierda versus el archivo actual en la derecha)

Mando: %YourPath%\BeyondCmp\BCompare.exe

Parámetros: "%X%p%n" "%X%t%m"

TheNewbie
fuente
¿Cuál es el efecto de% X y% x?
Joel
1
% X Interpreta los siguientes parámetros después de este parámetro como izquierda / derecha en lugar de origen / destino:% P,% p (ruta izquierda),% T,% t (ruta derecha),% N,% n (nombre izquierdo),% M,% m (nombre correcto),% S,% s (seleccionado a la izquierda),% R,% r (seleccionado a la derecha)
TheNewbie
% x Interpreta los siguientes parámetros después de este parámetro nuevamente como fuente / destino Ejemplo:% X% P% x% P envía la ruta izquierda y fuente al programa llamado
TheNewbie
Para la opción A, funcionó para mí (v8.51a) solo si agregué CompareToolalgún lugar cerca del comienzo del archivo wincmd.ini. No sé la configuración exacta que debe estar precedida por esto, por lo que diría que lo más simple es ponerlo al comienzo del archivo.
TLama
1
A partir de TC 9, puede utilizar% C1% C2 para emular mejor la forma en que funciona la herramienta de comparación interna:% C1 Me gusta el primer parámetro de "Comparar por contenido" -% C2 Me gusta el segundo parámetro de "Comparar por contenido"
marlar
1

Encontré esta pregunta porque quería usar Visual Studio Code como herramienta de diferencia externa.

Dado que VS Code no es principalmente una herramienta diff, no se puede invocar el archivo exe con dos nombres de archivo como parámetros. En cambio, la opción --diffo simplemente -dtiene que especificarse.

Esto es importante al editar el WINCMD.INI. La línea Comparetool tiene que tomar la ruta a code.exe y la opción diff:

[Configuration]
Comparetool="C:\Program Files\Microsoft VS Code\Code.exe" --diff
...
khlr
fuente