Skip to content

vscode-utility/vs-diff

Repository files navigation

CI GitHub license

npm version Gitpod Ready-to-Code install size npm bundle size npm downloads

vs-diff

vs-diff is a diff algorithm extracted from VS Code with the latest updates.

If you find this package useful for your projects, please consider supporting me by Github, Patreon, KO-FI or Paypal. It's a great way to help me maintain and improve this tool in the future. Your support is truly appreciated!

Github Patreon KO-FI Paypal

Installation

npm

npm install vs-diff

Usage

import {
  DiffComputer,
  ICharChange,
  IDiffComputerOpts,
  ILineChange,
} from "vs-diff";

const options: IDiffComputerOpts = {
  shouldPostProcessCharChanges: true,
  shouldIgnoreTrimWhitespace: true,
  shouldMakePrettyDiff: true,
  shouldComputeCharChanges: true,
  maxComputationTime: 0
};
let diffComputer = new DiffComputer(originalLines, modifiedLines, options);
let lineChanges: ILineChange[] = diffComputer.computeDiff().changes;
console.log(lineChanges);
/*
[
  {
    "originalStartLineNumber": 14,
    "originalEndLineNumber": 0,
    "modifiedStartLineNumber": 15,
    "modifiedEndLineNumber": 15
  },
  {
    "originalStartLineNumber": 16,
    "originalEndLineNumber": 0,
    "modifiedStartLineNumber": 18,
    "modifiedEndLineNumber": 18
  }
]
*/

Feedback

If you discover a bug, or have a suggestion for a feature request, please submit an issue.

LICENSE

This extension is licensed under the MIT License

About

Diff algorithm extracted from Visual Studio Code

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors 2

  •  
  •