All Projects → MakeNowJust → crystal-diff

MakeNowJust / crystal-diff

Licence: MIT license
A Crystal sequence differencing implementation

Programming Languages

crystal
512 projects

crystal-diff

Crystal sequence differencing implementation.

Based on the algorithm proposed in "An O(NP) Sequence Comparision Algorithm" (Wu, 1989)

Build Status

Installation

Add this to your application's shard.yml:

dependencies:
  diff:
    github: MakeNowJust/crystal-diff

Usage

require "colorize"
require "../src/diff"

Diff.diff("hello world", "hello good-bye").each do |chunk|
  print chunk.data.colorize(
    chunk.append? ? :green : chunk.delete? ? :red : :dark_gray)
end
puts

result

Development

$ crystal spec

Contributing

  1. Fork it ( https://github.com/MakeNowJust/crystal-diff/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].