rclone/vendor/github.com/pmezard/go-difflib
2017-05-11 15:39:54 +01:00
..
difflib Switch to using the dep tool and update all the dependencies 2017-05-11 15:39:54 +01:00
.travis.yml Switch to using the dep tool and update all the dependencies 2017-05-11 15:39:54 +01:00
LICENSE Add test dependencies back to vendor directory 2016-11-19 10:22:36 +00:00
README.md Switch to using the dep tool and update all the dependencies 2017-05-11 15:39:54 +01:00

go-difflib

Build Status
GoDoc

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