tree-sitter/docs/index.md
Peter Oliver 25e36bda87
Link to Emacs’ Tree-sitter documentation (#3881)
Since Emacs 29, Tree-sitter is a built-in feature not requiring a third-party Emacs module.
2024-11-04 14:08:52 -08:00

3.5 KiB

title
Introduction

Introduction

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

Language Bindings

There are currently bindings that allow Tree-sitter to be used from the following languages:

Official

Third-party

Parsers

A list of known parsers can be found in the wiki.

Talks on Tree-sitter

Underlying Research

The design of Tree-sitter was greatly influenced by the following research papers: