tree-sitter/cli
Max Brunsfeld ca64399f9f Ignore lock files in grammar repos
It is very common practice to ignore
these lock files for libraries, since they do not apply to applications
that use the libraries. The lock files are especially not useful in
tree-sitter grammar repos, since tree-sitter grammars should not have
dependencies. The lock files are just a source of merge conflicts and
spurious CI failures.
2025-05-28 10:58:45 -07:00
..
benches fix(rust): adapt to new nightly lint 2025-03-06 09:32:21 +01:00
config chore: a few minor lints 2025-01-21 00:57:58 -05:00
eslint build(deps): bump cross-spawn from 7.0.3 to 7.0.5 in /cli/eslint 2024-11-22 23:18:29 -05:00
generate fix(generate): mark url as a Windows-only dependency 2025-04-28 18:31:09 -04:00
loader fix(xtask): properly trim emscripten version at the source (#4402) 2025-04-27 20:59:04 -07:00
npm Fix hang in npm install script 2025-05-27 17:35:23 -07:00
src Ignore lock files in grammar repos 2025-05-28 10:58:45 -07:00
build.rs refactor(web): rename tree-sitter.js to web-tree-sitter.js 2025-02-11 22:56:50 -05:00
Cargo.toml build(deps): bump the cargo group across 1 directory with 8 updates 2025-03-25 12:24:08 +01:00
README.md docs(rust): add --locked to installation instructions 2024-10-30 10:51:46 -04:00

Tree-sitter CLI

crates.io badge npmjs.com badge

The Tree-sitter CLI allows you to develop, test, and use Tree-sitter grammars from the command line. It works on MacOS, Linux, and Windows.

Installation

You can install the tree-sitter-cli with cargo:

cargo install --locked tree-sitter-cli

or with npm:

npm install tree-sitter-cli

You can also download a pre-built binary for your platform from the releases page.

Dependencies

The tree-sitter binary itself has no dependencies, but specific commands have dependencies that must be present at runtime:

  • To generate a parser from a grammar, you must have node on your PATH.
  • To run and test parsers, you must have a C and C++ compiler on your system.

Commands

  • generate - The tree-sitter generate command will generate a Tree-sitter parser based on the grammar in the current working directory. See the documentation for more information.

  • test - The tree-sitter test command will run the unit tests for the Tree-sitter parser in the current working directory. See the documentation for more information.

  • parse - The tree-sitter parse command will parse a file (or list of files) using Tree-sitter parsers.