Skip to main content

Pre-compiled tree-sitter parsers for 197 programming languages with a unified process() API for parsing, analysis, and intelligent code chunking.

Project description

tree-sitter-language-pack — Python

Banner

Python bindings for tree-sitter-language-pack, providing access to 170+ pre-compiled tree-sitter parsers with on-demand downloads.

Installation

pip install tree-sitter-language-pack
uv add tree-sitter-language-pack

Quick Start

from tree_sitter_language_pack import init, download, get_language, get_parser, available_languages

# Optional: Pre-download specific languages for offline use
init(["python", "javascript", "rust"])

# Get a language (auto-downloads if not cached)
language = get_language("python")

# Get a pre-configured parser (auto-downloads if needed)
parser = get_parser("python")
tree = parser.parse(b"def hello(): pass")
print(tree.root_node.sexp())

# List all available languages
for lang in available_languages():
    print(lang)

from tree_sitter_language_pack import process, ProcessConfig

# Extract file intelligence (auto-downloads language if needed)
result = process("def hello(): pass", ProcessConfig(language="python"))
print(f"Functions: {len(result['structure'])}")

# Pre-download languages for offline use
download(["python", "javascript"])

# With chunking
result = process(source, ProcessConfig(language="python", chunk_max_size=1000, comments=True))
print(f"Chunks: {len(result['chunks'])}")

API Reference

Language Discovery

  • available_languages() -- list all supported language names
  • has_language(name) -- check if a language is available
  • language_count() -- total number of supported languages

Language Detection

  • detect_language(path) -- detect language from file path
  • detect_language_from_content(content) -- detect language from shebang line
  • extension_ambiguity(ext) -- check if an extension is ambiguous (returns assigned language + alternatives)

Parsing

  • get_parser(name) / parse_string(source, language) -- parse source code into a syntax tree

Download API

  • init(languages) -- pre-download specific languages for offline use
  • download(languages) -- download parsers on demand

Intelligence

  • process(source, config) -- extract structured analysis (functions, classes, imports, comments, chunks) from source code

Syntax Highlighting Queries

  • get_highlights_query(language) -- get bundled highlights.scm query for a language
  • get_injections_query(language) -- get bundled injections.scm query
  • get_locals_query(language) -- get bundled locals.scm query

For full documentation, see kreuzberg.dev.

License

MIT -- see LICENSE for details.


Part of tree-sitter-language-pack -- A comprehensive collection of tree-sitter language parsers with polyglot bindings.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

tree_sitter_language_pack-1.1.3-cp310-abi3-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10+Windows x86-64

tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.34+ x86-64

tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.34+ ARM64

tree_sitter_language_pack-1.1.3-cp310-abi3-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.3-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0ca8183e829c805147f760b8f1287fd5d8a29defe6e8c134d7ff97ce9adb836b
MD5 e9252d89e27653fac52e764cc0ecc8c3
BLAKE2b-256 fde85502fc6ba1ef4ae81c2ca6982b52e5e5ea7ed6b7e41de3eea30a7dfc7446

See more details on using hashes here.

Provenance

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

Publisher: publish.yaml on kreuzberg-dev/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-1.1.3-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 4833436c9eda6f4748dca94fec4eb8e487521feeeaa3923a7224fabc53b63f0c
MD5 8b3c040d9764e48415909e8281de7b0c
BLAKE2b-256 1d42bfd11f731c875f4575d6fdf0915625a61dff652a877922640bab1f2a1edc

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_x86_64.whl:

Publisher: publish.yaml on kreuzberg-dev/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-1.1.3-cp310-abi3-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 f9e46a9aed8eacb1d379f54976931de862ad72f3c1fdc1b9b8c7f5159b08c35a
MD5 90850a37850359ac9560bf13308e6b89
BLAKE2b-256 c82b18333f57c1e396983edc949f6c50254b929c71cd951f0795372e7a1c2bb4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.1.3-cp310-abi3-manylinux_2_34_aarch64.whl:

Publisher: publish.yaml on kreuzberg-dev/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-1.1.3-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.3-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f0fed8e37b9a1643029d4db1e7c03a1951553495a2dda71565e3cc98c9981e2b
MD5 bcb33db1463d9f65e420fa0073fc2243
BLAKE2b-256 1caba07faae78ee5cda02e14c030b0adce8f0bbb0c862f681280835165f06162

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.1.3-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: publish.yaml on kreuzberg-dev/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