Skip to main content

Pre-compiled tree-sitter parsers for 248 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 248 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.3.2-cp310-abi3-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.10+Windows x86-64

tree_sitter_language_pack-1.3.2-cp310-abi3-manylinux_2_34_x86_64.whl (2.5 MB view details)

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

tree_sitter_language_pack-1.3.2-cp310-abi3-manylinux_2_34_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.34+ ARM64

tree_sitter_language_pack-1.3.2-cp310-abi3-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.2-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7d39a4a97daedf45ceb39d075a6cdc379741a3c561883509bdb5fcc838597ae9
MD5 ed72799b7687c6beac4e7d970368a1a9
BLAKE2b-256 7232ff64b731eaa1c3a04d585631454c52af1a9c8e7a3acf9c3d5222e34fbcbe

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.3.2-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.3.2-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.2-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8a6c3ec270b24f0eb7f6d19077ba7f04eb53e551bcdfb27e78cd75742999cb08
MD5 4889d590aea86da1a90f029645bc6cb4
BLAKE2b-256 6be30fc552662114a4a7771408c18f7ea22957c49a0ce8add111a054cee990e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.3.2-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.3.2-cp310-abi3-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.2-cp310-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 ca156d81319e10b70412e1a86a1564f80c476e40caa577b424ae4189c832810e
MD5 76c20a2d077e03b7ed02b601b1e6752f
BLAKE2b-256 6f0e6f8ff91cae1388902aeedc500414cf42967f7e544a38e960a4aa0c0e042b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.3.2-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.3.2-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.2-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4262f46e78cf2aab392afea649ed313e5e1b33e7c9b02451d1b2e4e5143500ad
MD5 fa504b07cc3067e77d4e5cb19f94058b
BLAKE2b-256 64304b3a553706a82947d7e6c743d95b9120d76a52640f7368edbf00cd4d9c4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_sitter_language_pack-1.3.2-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