An incremental parsing system for programming tools https://tree-sitter.github.io
Find a file
2021-04-22 21:00:58 +03:00
.github/workflows Don't rely on bash 4.0 to lowercase platform name on CI 2021-02-11 17:08:14 -08:00
cli test(binding_rust): Use some redundancy to trigger more clear comliler error on the master 2021-04-22 21:00:58 +03:00
docs adding perl parser under development section 2021-03-28 18:35:11 +05:30
highlight Update tree-sitter-{highlight,tags} READMEs 2021-03-31 09:56:24 -04:00
lib binding_rust: Unbind nodes lifitime from a source for QueryCursor.matches 2021-04-22 21:00:58 +03:00
script Add --no-bindings flag to generate subcommand 2021-03-08 12:01:45 -08:00
tags Update tree-sitter-{highlight,tags} READMEs 2021-03-31 09:56:24 -04:00
test When editing, properly invalidate trees that depend on get_column 2021-03-11 14:46:13 -08:00
.appveyor.yml Restore the appveyor config file 2021-02-05 11:09:37 -08:00
.gitattributes lib: remove utf8proc dependency (#436) 2019-10-14 11:18:39 -07:00
.gitignore Added libtree-sitter.so* files into .gitignore 2021-03-08 10:06:59 +02:00
Cargo.lock Fix build-wasm on Windows 2021-04-04 19:07:16 -05:00
Cargo.toml Move code into cli directory 2019-01-04 16:50:52 -08:00
CONTRIBUTING.md Tweak readmes 2020-05-12 16:16:48 -07:00
LICENSE Add boilerplate 2018-05-17 14:46:29 -07:00
Makefile Fix compilation warnings (#635) 2020-06-03 12:19:57 -07:00
README.md Add zenodo citation badge to readme 2021-03-18 12:16:03 -07:00
tree-sitter.pc.in Add a simple Makefile-based build system. 2020-04-21 23:49:19 -04:00

tree-sitter

Build Status Build status DOI

Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. Tree-sitter aims to be:

  • General enough to parse any programming language
  • Fast enough to parse on every keystroke in a text editor
  • Robust enough to provide useful results even in the presence of syntax errors
  • Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application