DiffMatchPatchSharp 1.0.4
dotnet add package DiffMatchPatchSharp --version 1.0.4
NuGet\Install-Package DiffMatchPatchSharp -Version 1.0.4
<PackageReference Include="DiffMatchPatchSharp" Version="1.0.4" />
<PackageVersion Include="DiffMatchPatchSharp" Version="1.0.4" />
<PackageReference Include="DiffMatchPatchSharp" />
paket add DiffMatchPatchSharp --version 1.0.4
#r "nuget: DiffMatchPatchSharp, 1.0.4"
#:package DiffMatchPatchSharp@1.0.4
#addin nuget:?package=DiffMatchPatchSharp&version=1.0.4
#tool nuget:?package=DiffMatchPatchSharp&version=1.0.4
DiffMatchPatchSharp
Side by side (before and after) HTML diff library using Google DiffMatchPatch C# port with XML and plain text support
Package contains plain DiffMatchPatch library with C# naming style and also several extensions allowing parsing of structured formats. Custom formatters can be added into pipeline to present the changes in a customized way.
- TextDiffChanges - for finding plain text differences
- XmlTextDiffChanges - for comparing XML documents
- FlowDocumentDiffChanges - for FlowDocument comparison (only available in sources, no nuget package yet)
- HtmlTextDiffChanges - for HTML comparison.
Main purpose of the library is HTML comparison. Usually diff shows results in a single document which includes all changes: deleted, modified, added. This library produces side by side HTML diff results in 3 colors - red (deleted), yellow (changed) and green (added) - all configurable. "Before" document changes are coloured with deleted and changed markings while "After" document changes are coloured with changed and added markings.
HTML diff example:
var html1 = "<p><span>First text in the paragraph.</span><span>More text added later</span>Hello</p>";
var html2 = "<p><span>First text </span><span>in the paragraph. A new text inserted.</span><span>More text coming later.</span>Hell</p>";
var dc = new HtmlTextDiffChanges { AddedColor = Color.Aqua };
var (removed, added) = dc.CompareHtml(html1, html2);
Assert.AreEqual("<p><span>First text in the paragraph.</span><span>More text <span style=\"background-color: #FFFF00\">added</span> later</span>Hell<span style=\"background-color: #FF6347\">o</span></p>", removed);
Assert.AreEqual("<p><span>First text </span><span>in the paragraph.<span style=\"background-color: #00FFFF\"> A new text inserted.</span></span><span>More text <span style=\"background-color: #FFFF00\">coming</span> later<span style=\"background-color: #00FFFF\">.</span></span>Hell</p>", added);
More examples are available in unit tests.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.