jots-rs-py
Python bindings for Jot Syntax.
The normative specification lives at jotsyntax.org.
This package is a thin PyO3 binding over the Rust
parser in jots-rs. For a
pure-Python parser with no Rust/FFI dependency, see the sibling
jots-py.
Install
pip install jots-rs-py
Usage
import jots
result = jots.parse("..meeting ::work::q2 ??buy milk")
# {
# "tags": ["meeting"],
# "categories": ["work::q2"],
# "todos": [{"importance": 1, "action": "buy", "description": "milk", ...}],
# "diagnostics": [],
# ...
# }
Optional config flags (see SPEC §2.2) are passed via the config
keyword:
jots.parse(text, config={"parse_hashtags_as_tags": True, "emit_loc": False})
Iota Syntaxis (Unicode variant)
The Iota Syntaxis variant widens the
identifier and filename character classes to Unicode
XID_Start/XID_Continue: jots.parse(text, unicode=True) —
one wheel serves both variants.
Status
Tracks Jot Syntax 1.0 RC1 (2026-03-18). Current scope is the parser
only (Part II of the spec); the processor (Part III) will live in a
future jotr-py repo.
The parsed output currently uses byte-offset loc units, matching the
underlying Rust parser. A future release may switch the Python surface
to char offsets — see TODO.md.
Metadata
Release files for jots-rs-py 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jots_rs_py-0.2.1.tar.gz | 17.9 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jots_rs_py-0.2.1-cp39-abi3-win_amd64.whl | CPython 3.9 | abi3 | Windows x86-64 | Details |
| jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.9 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | CPython 3.9 | abi3 | Linux glibc 2.17+ ARM64 | Details |
Total release size: 3.0 MB
Release files / jots_rs_py-0.2.1.tar.gz
| Download URL | jots_rs_py-0.2.1.tar.gz |
|---|---|
| Size | 17.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9f07a6dbba0067bb9329f68e8be3940c01e129799d034fff71a14dd8b48bb044
|
|
BLAKE2b-256 checksum How to use checksums |
cad858c37a11726a7806130f65cf5c2bf183c6bbb1ed9cb38a32c5801f2428f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / jots_rs_py-0.2.1-cp39-abi3-win_amd64.whl
| Download URL | jots_rs_py-0.2.1-cp39-abi3-win_amd64.whl |
|---|---|
| Size | 938.3 kB |
| Tags | CPython 3.9 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
9e1019951e2644b03b98e7734998ce7c7531234f9bcb248e53f6a8e9b3885bfd
|
|
BLAKE2b-256 checksum How to use checksums |
ebcaa002555b1400092322a2fa48071ec3d4a4fa45471531bb37b1e844b69514
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
976f454d1c52214726dc9ca389ffd7082e34e08ec1c7a2bb3db46f175d4d803f
|
|
BLAKE2b-256 checksum How to use checksums |
cfe10a91ab73866bfd66ebf09f8af0d95ccacf3e1933d5d3d3ac3487b97af21b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | jots_rs_py-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 995.1 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
3eade577aeea2e34d87bcbe7d3698ddacbefd72bd474d9ae1c892765014a3874
|
|
BLAKE2b-256 checksum How to use checksums |
c327283d39da30cda45ae67df31460cc30acbf66435b81311eaa830bd0236593
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|