3 months ago
Generate parser
3 months ago
Support comments (#15)

5 months ago
Generate parser
5 months ago
Support mode changing syntax

Changes that are only permissions take the shape `old/new mode <mode>`.
5 months ago
Expose the similarity score as a named node

It was previously a field, but a field is an impossible pattern for a
regex literal like we use for score. I.e.:

    (similarity score: _ @_some_capture_)

Cannot match and on recent tree-sitter versions will cause an error
during query analysis.
5 months ago
Expose diff argument as a named 'argument' node
6 months ago
Generate parser
6 months ago
Remove '--git' assumption

Assume that any string is fine. If it's a different diff format then the
parser will fail anyways.
1 year ago
js: Update dependencies
1 year ago
Generate parser
1 year ago
Organize changes into hunks

This introduces some hierarchy for the nodes so that each
'diff --git a b' command is a block which can have 'hunks'. Each 'hunk'
has a 'location' and a set of 'changes' under it which contain the
'addition's, 'deletion's and 'context' nodes.
1 year ago
SPM support (#6)

1 year ago
Run CI on pushes and pull requests
1 year ago
Run npm format
1 year ago
Generate parser
1 year ago
Parse three or more '+'s as additions
1 year ago
Fix highlighting diff of diffs

The symbol ++ is valid when the diff is showing another diff,
e.g. when committing a diff file to a repository.
2 years ago
Add example highlights
2 years ago
Generate parser
2 years ago
Fix deletions with multiple leading dashes

Deleted lines may start with the leading dash "-" but then the line
itself may contain an arbitrary number of dashes. This change parses
any number of leading dashes as a deletion except for the triple
leading dash which is considered to be an old file marker.

These cases should have been valid parse examples before but were
marked as errors because of the contention between the deletion
and old_file rules and error recovery.

Connects #1
2 years ago
Only list diff as supported file-types
2 years ago
Generate parser
2 years ago
Bump npm dependencies
2 years ago
Bump tree-sitter-cli to 0.20.7
2 years ago
Mark lines starting with '--' as deletions
2 years ago
Gneerate parser on latest tree-sitter
2 years ago
fix links in readme
2 years ago
ignore wasm bindings
2 years ago
remove generated wasm bindings
2 years ago
push generated wasm binding to the gh-pages branch
2 years ago
use custom action for generating the parser commit
2 years ago
Generate parser
2 years ago
rebrand as tree-sitter-diff
2 years ago
remove flakes
2 years ago
mark tree-sitter-generated files as generated
2 years ago
add readme section on grammar design
2 years ago
add example highlights to readme
2 years ago
add CI and parser generation actions workflows
2 years ago
add playground in docs dir
2 years ago
add test cases for locations within diffs
2 years ago
clean up line repetition rules
2 years ago
make grammar more resilient to (lack-of) newlines
2 years ago
rename to tree-sitter-git-diff
2 years ago
separate out nodes for old and new files
2 years ago
use a regex instead of a choice for file declarations
2 years ago
test case for 'no newline at end of file'
2 years ago
format
2 years ago
parse locations without context
2 years ago
generate wasm
2 years ago
add test case for binary file deletion
2 years ago
regenerate parser
2 years ago
add rule parse binary changes
2 years ago
reorganize 'seq's with 'iseq' helper
2 years ago
generate wasm
2 years ago
separate out percentage from similarity score
2 years ago
remove unecessary prec rules
2 years ago
parse file renames
2 years ago
parse new and deleted files
2 years ago
parse a simple text-file based example
2 years ago
ideate on overall rules
2 years ago
setup newline and placeholder for extras
2 years ago
add test case files for texts and binaries
2 years ago
generate 'hello world' of grammars
2 years ago
add npm package declaration
2 years ago
add LICENSE
2 years ago
add basic devShell flake
2 years ago
add basics to readme
2 years ago
Initial commit