bystep15 / google-diff-match-patch

Automatically exported from code.google.com/p/google-diff-match-patch
Apache License 2.0
282 stars 70 forks source link

Diff, Match and Patch Library http://code.google.com/p/google-diff-match-patch/ Neil Fraser

This library is currently available in seven different ports, all using the same API. Every version includes a full set of unit tests.

API地址(https://github.com/bystep15/google-diff-match-patch/tree/wiki)

C++:

C#:

Dart:

Java:

JavaScript:

Lua:

Objective C:

Python:

Demos:

The Diff Match and Patch libraries offer robust algorithms to perform the operations required for synchronizing plain text.

Diff

Match

Patch

Currently available in Java, JavaScript, Dart, C++, C#, Objective C, Lua and Python. Regardless of language, each library features the same API and the same functionality. All versions also have comprehensive test harnesses.

Algorithms

This library implements Myer's diff algorithm which is generally considered to be the best general-purpose diff. A layer of pre-diff speedups and post-diff cleanups surround the diff algorithm, improving both performance and output quality.

This library also implements a Bitap matching algorithm at the heart of a flexible matching and patching strategy.