Skip to main content

Comprehensive collection of 160+ tree-sitter language parsers

Project description

Tree Sitter Language Pack

PyPI Python Versions License Downloads

This package bundles a comprehensive collection of tree-sitter languages as both source distribution and pre-built wheels.

Support This Project

If you find tree-sitter-language-pack useful, please consider sponsoring the development:

Sponsor on GitHub

Your support helps maintain and improve this package for the community! 🚀

Installation

pip install tree-sitter-language-pack

Important Notes

  • This package started life as a maintained and updated fork of tree-sitter-languages by Grant Jenks, and it incorporates code contributed by ObserverOfTime (see this PR).
  • This package is MIT licensed and the original package of which this is a fork has an Apache 2.0 License. Both licenses are available in the LICENSE file.
  • All languages bundled by this package are licensed under permissive open-source licenses (MIT, Apache 2.0 etc.) only - no GPL licensed languages are included.
  • This package follows the general Python life-cycle and now requires Python 3.10 or newer. We align with tree-sitter 0.25.x and newer, which dropped Python 3.9 support ahead of the upstream EOL.

Features

  • 165+ Languages: Support for all major programming languages and many domain-specific languages
  • Pre-built Wheels: Easy installation with no compilation required
  • Type-Safe: Full typing support for better IDE integration and code safety
  • Zero GPL Dependencies: All bundled languages use permissive licenses (MIT, Apache 2.0, etc.)

Usage

This library exposes three functions: get_binding, get_language, and get_parser.

from tree_sitter_language_pack import get_binding, get_language, get_parser

python_binding = get_binding("python")  # this is a pycapsule object pointing to the C binding
python_lang = get_language("python")  # this is an instance of tree_sitter.Language
python_parser = get_parser("python")  # this is an instance of tree_sitter.Parser

See the list of available languages below to get the name of the language you want to use.

Development Setup

To work on the package locally you will need Python 3.10+ and the uv toolchain.

# Install runtime dependencies
uv sync --no-install-project

# Install the tree-sitter CLI used for code generation
npm install -g tree-sitter-cli

# Install prek hooks (Rust-based pre-commit replacement)
uv tool install prek
prek install
prek install --hook-type commit-msg

# Fetch bundled language vendors and build native extensions
uv run --no-sync scripts/clone_vendors.py
PROJECT_ROOT=. uv run setup.py build_ext --inplace

# Run the full test suite
PROJECT_ROOT=. uv run --no-sync pytest tests

# Execute all lint/format checks
prek run --all-files

Available Languages

Each language below is identified by the key used to retrieve it from the get_language and get_parser functions.

Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Setting up your development environment
  • Adding new languages
  • Running tests
  • Submitting pull requests

License

This project is licensed under the MIT OR Apache-2.0 license. See the LICENSE file for details.

Acknowledgments

This package started as a maintained fork of tree-sitter-languages by Grant Jenks.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tree_sitter_language_pack-0.13.0.tar.gz (51.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tree_sitter_language_pack-0.13.0-cp310-abi3-win_amd64.whl (16.9 MB view details)

Uploaded CPython 3.10+Windows x86-64

tree_sitter_language_pack-0.13.0-cp310-abi3-musllinux_1_2_x86_64.whl (19.9 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

tree_sitter_language_pack-0.13.0-cp310-abi3-macosx_10_15_universal2.whl (33.0 MB view details)

Uploaded CPython 3.10+macOS 10.15+ universal2 (ARM64, x86-64)

File details

Details for the file tree_sitter_language_pack-0.13.0.tar.gz.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0.tar.gz
Algorithm Hash digest
SHA256 032034c5e27b1f6e00730b9e7c2dbc8203b4700d0c681fd019d6defcf61183ec
MD5 68c4910750bb0ef893a55667f5244965
BLAKE2b-256 c183d1bc738d6f253f415ee54a8afb99640f47028871436f53f2af637c392c4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0.tar.gz:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_sitter_language_pack-0.13.0-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1cdbc88a03dacd47bec69e56cc20c48eace1fbb6f01371e89c3ee6a2e8f34db1
MD5 ca8d63eb8e877118b6f97209c1b1951d
BLAKE2b-256 97592287f07723c063475d6657babed0d5569f4b499e393ab51354d529c3e7b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0-cp310-abi3-win_amd64.whl:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_sitter_language_pack-0.13.0-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 78f369dc4d456c5b08d659939e662c2f9b9fba8c0ec5538a1f973e01edfcf04d
MD5 1604c703e6677fa54a7efd62202ca992
BLAKE2b-256 48925fd749bbb3f5e4538492c77de7bc51a5e479fec6209464ddc25be9153b13

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d4f261fce387ae040dae7e4d1c1aca63d84c88320afcc0961c123bec0be8377
MD5 54b4672aaa51e23e968b870a11195054
BLAKE2b-256 729d644db031047ab1a70fc5cb6a79a4d4067080fac628375b2320752d2d7b58

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_x86_64.whl:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7fdacf383418a845b20772118fcb53ad245f9c5d409bd07dae16acec65151756
MD5 3cbc5c4ac49f1f770859e9b4c3d2f54b
BLAKE2b-256 900911f51c59ede786dccddd2d348d5d24a1d99c54117d00f88b477f5fae4bd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0-cp310-abi3-manylinux2014_aarch64.whl:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_sitter_language_pack-0.13.0-cp310-abi3-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-0.13.0-cp310-abi3-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 0e7eae812b40a2dc8a12eb2f5c55e130eb892706a0bee06215dd76affeb00d07
MD5 a5b39a38435126c8201fa144321bfa2c
BLAKE2b-256 e938aec1f450ae5c4796de8345442f297fcf8912c7d2e00a66d3236ff0f825ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-0.13.0-cp310-abi3-macosx_10_15_universal2.whl:

Publisher: build_and_publish.yaml on Goldziher/tree-sitter-language-pack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page