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

Uploaded CPython 3.10+Windows x86-64

tree_sitter_language_pack-1.1.4-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.4-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.4-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.4-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.4-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 625ede0dce0de053aeb48a0d75a3d15c23461b2a5a2f30852baa33c91a6d6ba4
MD5 f77e0777e99f7f79abc66174a4a19aa4
BLAKE2b-256 ea565fa0e45f52578f38a5b81353d7b0b2ca6aee9b9ddbd736fa5c0f5d8cd437

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.4-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 168d4ed7c3dbadfc346e3f908ca4a3dccfbe79858b46af9826e03d71f4c396fa
MD5 3a5ed5b7ec7607561a9c59b97b57f2ba
BLAKE2b-256 fdf5338eb6d816122f4c371be8bd5f1ab6eb2bbbd88e7c1b4b0eeccdd169a6e6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.4-cp310-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 b9f2217b9c4b361dfae6a8a6fff282d1c95c5ec1168e4ad0e6e814a37124b61d
MD5 4632efedb7b192199dbc4471d079c48f
BLAKE2b-256 2fe679b1b332aaf644318fe4a984bcb0dd0aaea19ac9a4c430ded7e6ef46da6b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tree_sitter_language_pack-1.1.4-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 705943eb6ac4564be8ebf34d3fde9d3701da1a98f3ecb1a9fd5664e613e4cc87
MD5 eb1e9dfa42968309a420ee1e58ac2c98
BLAKE2b-256 ce77e85ceadf5d69aa13773e96bd340875a606d2c69cf18730e0c3295b8abc67

See more details on using hashes here.

Provenance

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