mirror of https://github.com/tidwall/tile38.git
26d0083faf
commit a1a37d335a8e89ac89d85c00c8585d3fc02e064a Author: Josh Baker <joshbaker77@gmail.com> Date: Thu Oct 5 07:36:54 2017 -0700 use symlink instead of copy commit 96399c2c92620f633611c778e5473200bfd48d41 Author: Josh Baker <joshbaker77@gmail.com> Date: Thu Oct 5 07:19:26 2017 -0700 use dep for vendoring |
||
---|---|---|
.. | ||
difflib | ||
.travis.yml | ||
LICENSE | ||
README.md |
README.md
go-difflib
Go-difflib is a partial port of python 3 difflib package. Its main goal was to make unified and context diff available in pure Go, mostly for testing purposes.
The following class and functions (and related tests) have be ported:
SequenceMatcher
unified_diff()
context_diff()
Installation
$ go get github.com/pmezard/go-difflib/difflib
Quick Start
Diffs are configured with Unified (or ContextDiff) structures, and can be output to an io.Writer or returned as a string.
diff := UnifiedDiff{
A: difflib.SplitLines("foo\nbar\n"),
B: difflib.SplitLines("foo\nbaz\n"),
FromFile: "Original",
ToFile: "Current",
Context: 3,
}
text, _ := GetUnifiedDiffString(diff)
fmt.Printf(text)
would output:
--- Original
+++ Current
@@ -1,3 +1,3 @@
foo
-bar
+baz