Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
* text
*.snk binary
*.bin binary
*.png binary

src/Verify/EmptyFiles/* binary
Expand Down
15 changes: 8 additions & 7 deletions docs/diff-tool.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,13 +147,13 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_BeyondCompare`
* Supported binaries: .7z, .bcpkg, .bmp, .bz, .bz2, .cab, .chm, .deb, .ear, .gif, .gz, .ico, .img, .iso, .iso, .jar, .jpeg, .jpg, .kmz, .nupkg, .pdf, .png, .rar, .rpm, .rtf, .svg, .swm, .tar, .tbz, .tbz2, .tbz2, .tgz, .tif, .tiff, .war, .wim, .xlsx, .xz, .zip, .zipx
* Supported binaries: .7z, .bcpkg, .bin, .bmp, .bz, .bz2, .cab, .chm, .deb, .ear, .gif, .gz, .ico, .img, .iso, .iso, .jar, .jpeg, .jpg, .kmz, .nupkg, .pdf, .png, .rar, .rpm, .rtf, .svg, .swm, .tar, .tbz, .tbz2, .tbz2, .tgz, .tif, .tiff, .war, .wim, .xlsx, .xz, .zip, .zipx

#### Notes:

* [Command line reference](https://www.scootersoftware.com/v4help/index.html?command_line_reference.html)
* Enable [Automatically reload unless changes will be discarded](https://www.scootersoftware.com/v4help/optionstweak.html) in `Tools > Options > Tweaks > File Operations`.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
`Tools > Options > Archive Types`. Scroll down to Zip, then add extra extension to the semicolon delimited list.

#### Windows settings:
Expand Down Expand Up @@ -279,7 +279,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_ExamDiff`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Notes:

Expand Down Expand Up @@ -358,7 +358,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_Kaleidoscope`
* Supported binaries: .bmp, .gif, .ico, .jpeg, .jpg, .png, .svg, .tif, .tiff
* Supported binaries: .bin, .bmp, .gif, .ico, .jpeg, .jpg, .png, .svg, .tif, .tiff

#### OSX settings:

Expand Down Expand Up @@ -445,6 +445,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
-d "tempFile.txt" "targetFile.txt"
```
* Scanned paths:
* `C:\Program Files\Neovim\binnvim.exe`
* `%PATH%nvim.exe`

#### OSX settings:
Expand Down Expand Up @@ -668,7 +669,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_TortoiseGitMerge`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Windows settings:

Expand Down Expand Up @@ -794,7 +795,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_WinMerge`
* Supported binaries: .bmp, .bw, .cut, .dds, .exr, .g3, .gif, .hdp, .hdr, .ico, .iff, .j2c, .j2k, .jif, .jng, .jp2, .jpe, .jpeg, .jpg, .jxr, .koa, .lbm, .mng, .pbm, .pcd, .pct, .pcx, .pfm, .pgm, .pic, .pict, .png, .ppm, .psd, .ras, .rgb, .rgba, .sgi, .svg, .targa, .tga, .tif, .tiff, .wap, .wbm, .wbmp, .wdp, .webp, .xbm, .xpm
* Supported binaries: .bin, .bmp, .bw, .cut, .dds, .exr, .g3, .gif, .hdp, .hdr, .ico, .iff, .j2c, .j2k, .jif, .jng, .jp2, .jpe, .jpeg, .jpg, .jxr, .koa, .lbm, .mng, .pbm, .pcd, .pct, .pcx, .pfm, .pgm, .pic, .pict, .png, .ppm, .psd, .ras, .rgb, .rgba, .sgi, .svg, .targa, .tga, .tif, .tiff, .wap, .wbm, .wbmp, .wdp, .webp, .xbm, .xpm

#### Notes:

Expand Down Expand Up @@ -1030,7 +1031,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: False
* Environment variable for custom install location: `DiffEngine_VisualStudioCode`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Notes:

Expand Down
2 changes: 1 addition & 1 deletion docs/diff-tool.order.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,5 +51,5 @@ For example `VisualStudio,Meld` will result in VisualStudio then Meld then all o
```cs
DiffTools.UseOrder(DiffTool.VisualStudio, DiffTool.AraxisMerge);
```
<sup><a href='/src/DiffEngine.Tests/DiffToolsTest.cs#L183-L187' title='Snippet source file'>snippet source</a> | <a href='#snippet-UseOrder' title='Start of snippet'>anchor</a></sup>
<sup><a href='/src/DiffEngine.Tests/DiffToolsTest.cs#L188-L192' title='Snippet source file'>snippet source</a> | <a href='#snippet-UseOrder' title='Start of snippet'>anchor</a></sup>
<!-- endSnippet -->
5 changes: 5 additions & 0 deletions src/DiffEngine.Tests/DiffToolsTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,11 @@ static async Task AddToolAndLaunch()
}
/**

[Fact]
public Task LaunchSpecificBinaryDiff() =>
DiffRunner.LaunchAsync(DiffTool.VisualStudioCode,
Path.Combine(SourceDirectory, "input.temp.bin"),
Path.Combine(SourceDirectory, "input.target.bin"));
[Fact]
public Task LaunchSpecificTextDiff() =>
DiffRunner.LaunchAsync(DiffTool.VisualStudioCode,
Expand Down
15 changes: 8 additions & 7 deletions src/DiffEngine.Tests/diffTools.include.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_BeyondCompare`
* Supported binaries: .7z, .bcpkg, .bmp, .bz, .bz2, .cab, .chm, .deb, .ear, .gif, .gz, .ico, .img, .iso, .iso, .jar, .jpeg, .jpg, .kmz, .nupkg, .pdf, .png, .rar, .rpm, .rtf, .svg, .swm, .tar, .tbz, .tbz2, .tbz2, .tgz, .tif, .tiff, .war, .wim, .xlsx, .xz, .zip, .zipx
* Supported binaries: .7z, .bcpkg, .bin, .bmp, .bz, .bz2, .cab, .chm, .deb, .ear, .gif, .gz, .ico, .img, .iso, .iso, .jar, .jpeg, .jpg, .kmz, .nupkg, .pdf, .png, .rar, .rpm, .rtf, .svg, .swm, .tar, .tbz, .tbz2, .tbz2, .tgz, .tif, .tiff, .war, .wim, .xlsx, .xz, .zip, .zipx

#### Notes:

* [Command line reference](https://www.scootersoftware.com/v4help/index.html?command_line_reference.html)
* Enable [Automatically reload unless changes will be discarded](https://www.scootersoftware.com/v4help/optionstweak.html) in `Tools > Options > Tweaks > File Operations`.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
`Tools > Options > Archive Types`. Scroll down to Zip, then add extra extension to the semicolon delimited list.

#### Windows settings:
Expand Down Expand Up @@ -144,7 +144,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_ExamDiff`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Notes:

Expand Down Expand Up @@ -223,7 +223,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_Kaleidoscope`
* Supported binaries: .bmp, .gif, .ico, .jpeg, .jpg, .png, .svg, .tif, .tiff
* Supported binaries: .bin, .bmp, .gif, .ico, .jpeg, .jpg, .png, .svg, .tif, .tiff

#### OSX settings:

Expand Down Expand Up @@ -310,6 +310,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
-d "tempFile.txt" "targetFile.txt"
```
* Scanned paths:
* `C:\Program Files\Neovim\binnvim.exe`
* `%PATH%nvim.exe`

#### OSX settings:
Expand Down Expand Up @@ -533,7 +534,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_TortoiseGitMerge`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Windows settings:

Expand Down Expand Up @@ -659,7 +660,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: True
* Environment variable for custom install location: `DiffEngine_WinMerge`
* Supported binaries: .bmp, .bw, .cut, .dds, .exr, .g3, .gif, .hdp, .hdr, .ico, .iff, .j2c, .j2k, .jif, .jng, .jp2, .jpe, .jpeg, .jpg, .jxr, .koa, .lbm, .mng, .pbm, .pcd, .pct, .pcx, .pfm, .pgm, .pic, .pict, .png, .ppm, .psd, .ras, .rgb, .rgba, .sgi, .svg, .targa, .tga, .tif, .tiff, .wap, .wbm, .wbmp, .wdp, .webp, .xbm, .xpm
* Supported binaries: .bin, .bmp, .bw, .cut, .dds, .exr, .g3, .gif, .hdp, .hdr, .ico, .iff, .j2c, .j2k, .jif, .jng, .jp2, .jpe, .jpeg, .jpg, .jxr, .koa, .lbm, .mng, .pbm, .pcd, .pct, .pcx, .pfm, .pgm, .pic, .pict, .png, .ppm, .psd, .ras, .rgb, .rgba, .sgi, .svg, .targa, .tga, .tif, .tiff, .wap, .wbm, .wbmp, .wdp, .webp, .xbm, .xpm

#### Notes:

Expand Down Expand Up @@ -895,7 +896,7 @@ Non-MDI tools are preferred since it allows [DiffEngineTray](tray.md) to track a
* Supports text files: True
* Use shell execute: False
* Environment variable for custom install location: `DiffEngine_VisualStudioCode`
* Supported binaries: .svg
* Supported binaries: .bin, .svg

#### Notes:

Expand Down
1 change: 1 addition & 0 deletions src/DiffEngine.Tests/input.target.bin
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

1 change: 1 addition & 0 deletions src/DiffEngine.Tests/input.temp.bin
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

3 changes: 2 additions & 1 deletion src/DiffEngine/Implementation/BeyondCompare.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ static string RightOsxLinuxArguments(string temp, string target) =>
RequiresTarget: true,
BinaryExtensions:
[
".bin",
".svg",
".pdf",
".bmp",
Expand Down Expand Up @@ -91,7 +92,7 @@ static string RightOsxLinuxArguments(string temp, string target) =>
Notes: """
* [Command line reference](https://www.scootersoftware.com/v4help/index.html?command_line_reference.html)
* Enable [Automatically reload unless changes will be discarded](https://www.scootersoftware.com/v4help/optionstweak.html) in `Tools > Options > Tweaks > File Operations`.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
* For `.kmz`, and `.nupkg`, Beyond Compare needs to be configured to treat them as zip.
`Tools > Options > Archive Types`. Scroll down to Zip, then add extra extension to the semicolon delimited list.
""");
}
Expand Down
6 changes: 5 additions & 1 deletion src/DiffEngine/Implementation/ExamDiff.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,11 @@ static string RightArguments(string temp, string target)
UseShellExecute: true,
RequiresTarget: true,
Cost: "Paid",
BinaryExtensions: [".svg"],
BinaryExtensions:
[
".bin",
".svg"
],
OsSupport: new(
Windows: new(
"ExamDiff.exe",
Expand Down
3 changes: 2 additions & 1 deletion src/DiffEngine/Implementation/Kaleidoscope.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ public static Definition Kaleidoscope() =>
".jpeg",
".png",
".tiff",
".tif"
".tif",
".bin"
],
OsSupport: new(
Osx: new(
Expand Down
3 changes: 2 additions & 1 deletion src/DiffEngine/Implementation/Neovim.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ public static Definition Neovim()
OsSupport: new(
Windows: new(
"nvim.exe",
launchArguments),
launchArguments,
searchDirectory: @"C:\Program Files\Neovim\bin"),
Linux: new(
"nvim",
launchArguments),
Expand Down
6 changes: 5 additions & 1 deletion src/DiffEngine/Implementation/TortoiseGitMerge.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,11 @@ public static Definition TortoiseGitMerge() =>
UseShellExecute: true,
RequiresTarget: true,
Cost: "Free",
BinaryExtensions: [".svg"],
BinaryExtensions:
[
".svg",
".bin"
],
OsSupport: new(
Windows: new(
"TortoiseGitMerge.exe",
Expand Down
8 changes: 6 additions & 2 deletions src/DiffEngine/Implementation/VsCode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ public static Definition VisualStudioCode()
UseShellExecute: false,
RequiresTarget: true,
Cost: "Free",
BinaryExtensions: [".svg"],
BinaryExtensions:
[
".svg",
".bin"
],
OsSupport: new(
Windows: new(
"code.cmd",
Expand All @@ -28,6 +32,6 @@ public static Definition VisualStudioCode()
"code",
launchArguments,
"/Applications/Visual Studio Code.app/Contents/Resources/app/bin/")),
Notes: " * [Command line reference](https://code.visualstudio.com/docs/editor/command-line)");
Notes: " * [Command line reference](https://code.visualstudio.com/docs/editor/command-line)");
}
}
1 change: 1 addition & 0 deletions src/DiffEngine/Implementation/WinMerge.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ static string RightArguments(string temp, string target)
Cost: "Free with option to donate",
BinaryExtensions:
[
".bin",
".svg",
".bmp",
".cut",
Expand Down