rbtr-lang-markdown
Markdown support for rbtr. A default plugin — installed with
rbtr itself (pip install rbtr).
What it ingests
A custom chunker (not a tree-sitter query): it splits a document by its heading hierarchy — each section is a chunk, scoped by its ancestor headings. Links and fenced code blocks are extracted on top.
- Sections — headings → doc sections;
scopeis the::chain of enclosing headings. A headingless document falls back to plaintext chunks. - Links — local
[text](path.md)and[text](path.md#fragment)→ imports (the fragment becomesnames). External and fragment-only links are skipped. - Fenced code — delegated to the block's language (see below).
Chunks produced
# Guide <!-- doc_section "Guide" -->
## Setup <!-- doc_section "Setup", scope "Guide" -->
See [the API](api.md#run). <!-- import, metadata {module: api.md, names: run} -->
Embedded / injected chunks
A fenced block delegates to its language, extracted at real line numbers — and delegation recurses, so a block that itself embeds another language resolves all the way down (markdown → html → js):
```yaml
service: greeter <!-- doc_section "service" (yaml) -->
```
```html
<main> <!-- doc_section "main" (html) -->
<script>
function boot() {} <!-- function "boot" (javascript, nested) -->
</script>
</main>
```
Grammar & dependencies
Uses the tree-sitter-markdown grammar. No runtime dependency on other
language plugins; the test suite dev-depends on the plugins its sample's
fenced blocks delegate to (bash, css, html, javascript, python, scss — plus
svelte/toml/yaml via core until those are packaged).
Metadata
Release files for rbtr-lang-markdown 2026.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rbtr_lang_markdown-2026.9.0.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rbtr_lang_markdown-2026.9.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.5 kB
Release files / rbtr_lang_markdown-2026.9.0.tar.gz
| Download URL | rbtr_lang_markdown-2026.9.0.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8ac321c05d978ae5434d41584201a5964994813f80aa75e65cb5bd8143f69278
|
|
BLAKE2b-256 checksum How to use checksums |
61e656bdc964edf9cc2a0fb39a45ea5df1d2b355a5c7e6cc5782a0f8d49cbef6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / rbtr_lang_markdown-2026.9.0-py3-none-any.whl
| Download URL | rbtr_lang_markdown-2026.9.0-py3-none-any.whl |
|---|---|
| Size | 19.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aee02ef905f5935edab3bd3ad93900459ac7371ac1ad8a031ed56c11c06ee74d
|
|
BLAKE2b-256 checksum How to use checksums |
ec90fe59d4f174b4805e20c9a0da2efea63b09ab188740a99a652a324181ae16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|