An incremental parsing system for programming tools https://tree-sitter.github.io
Find a file
2021-02-25 21:41:49 -08: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 Fix query match failure when indefinite steps have no captures 2021-02-25 21:41:49 -08:00
docs Updated docs for tree-sitter-svelte (#936) 2021-02-24 09:35:42 -08:00
highlight highlight: Make README snippets compile 2020-11-24 12:35:38 +01:00
lib Fix query match failure when indefinite steps have no captures 2021-02-25 21:41:49 -08:00
script Merge pull request #906 from tree-sitter/unicode-property-escapes 2021-02-17 16:14:42 -08:00
tags tags: fix compilation on aarch64 2020-11-13 19:01:57 +06:00
test Implement named precedence comparison 2021-02-24 16:02:56 -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 Start work on restructuring query implementation to deal w/ optionals and repeats better 2020-05-07 12:41:25 -07:00
Cargo.lock Walk query files recursively in tree-sitter test. 2021-02-25 10:24:54 -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 Put GH actions badge in the README 2021-02-05 12:22:46 -08: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

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