Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Patchy the patchy patcher
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
test
.gitignore
LICENSE
Makefile
README.md
package.json

README.md

Patchy

Intro

Patchy uses Google's DiffMatchPatch code to provide two basic, easy to use methods:

The Code

To install

npm install patchy
cd node_modules/patchy
npm install

To use

// get a patchy object
var patchy = require('patchy');

// make a patch: makePatch( original_string, new_string ); 
patchy.makePatch('', 'Hello world'); // returns '@@ -0,0 +1,11 @@\n+Hello world\n'

// apply a patch: applyPatch( original_string, patch_string );
patchy.applyPatch('', '@@ -0,0 +1,11 @@\n+Hello world\n'); // returns 'Hello world'

// apply an array of patches: applyPatch(original_string, array_of_patch_strings );
patchy.applyPatch('', [
    '@@ -0,0 +1,11 @@\n+Hello world\n',
    '@@ -1,9 +1,17 @@\n-Hello\n+Goodbye cruel\n  wor\n',
    '@@ -12,8 +12,24 @@\n el world\n+, we\'ll miss you\n'
]);
// returns "Goodbye cruel world, we'll miss you"

Run the tests

You need mocha and should.js. Google's DiffMatchPatch is extensively unit-tested so these tests merely confirm that patchy isn't adding or removing anything

make test
Something went wrong with that request. Please try again.