-
-
Notifications
You must be signed in to change notification settings - Fork 197
Open
Description
Hi, thanks for this project! I noticed the following issue which may come up when, for example, entire code blocks are inserted.
Consider these two simple .js files:
File1:
function foo() {
console.log("foo");
}
File2:
function foo() {
console.log("foo");
}
function bar() {
console.log("bar");
}
Here, the line-level diff is expected, it's clear that all of bar() was inserted, along with its end brace:

Now, consider a similar addition, but with a simple change inside foo():
File3:
function foo() {
bar();
console.log("foo");
}
function bar() {
console.log("bar");
}
Comparing File1 with File3 shows the change begins at the end brace of foo(), and it's not immediately clear that a complete function was added.
Worth noting that this matches the behavior of GNU diff:

But tools like DiffChecker.com give output that is potentially more useful:

Metadata
Metadata
Assignees
Labels
No labels
