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.3-cp310-abi3-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.10+Windows x86-64

tree_sitter_language_pack-1.3.3-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.3-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.3-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.3-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.3-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 8a0735f898fc9443c90ea824c88b9fc19588ea10567ae97c768e3f9b14b64e16
MD5 0efb21696cdee2f1f010463e7d5d90e3
BLAKE2b-256 6e644fdf78ddd2d59f3e66332d3d6a0f3460e6425045f7150ed02d37f73ef019

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.3-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 d699b26a251769628045f298a184e86c005cc25c8a67646c0562adc929044e95
MD5 aaddcc4e58cee2e6959413efaf4c41f8
BLAKE2b-256 03428e768d21ae85bc6982e2693e9016d75a6e06f1f98a6f4dec5bcb07120dd7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.3-cp310-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 a6921210705fd12fb67823c428c800e7903e835c5108eef06df3a09832e8a23e
MD5 b76b8cdd0e9c6334743ae0f39201cb9e
BLAKE2b-256 e561531cc590cf6aa35efdc63741fc2bf17b97a6b280a08695df65b168dc3f9a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.3.3-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3efb7068e61342b731b23216447b536f2fe57f7abc7a4f291e5c22760d964350
MD5 941b097418f20533c5069f19f898cf40
BLAKE2b-256 80ec230bda9b98fbc7a37e91e634633bb51a95aa25c3c6b92bb1a41f741c3dd3

See more details on using hashes here.

Provenance

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