Skip to main content

Todoosy - Markdown-based todo system parser, formatter, linter, and query engine

Project description

Todoosy Python Library

Python implementation of the Todoosy format parser, formatter, linter, and query engine.

Installation

pip install -e .

For development:

pip install -e ".[dev]"

Usage

from todoosy import parse, format, lint, query_upcoming, query_misc, parse_scheme

# Parse a document
result = parse('''
# Work

- Task (due 2026-01-15 p1 2h)

# Misc
''')

# Access the AST
for item in result.ast.items:
    print(f"{item.title_text}: due={item.metadata.due}")

# Format a document
formatted = format(input_text)

# Lint a document
warnings = lint(input_text)
for w in warnings.warnings:
    print(f"{w.code}: {w.message}")

# Query upcoming items
scheme = parse_scheme(scheme_text)
upcoming = query_upcoming(input_text, scheme)
for item in upcoming.items:
    print(f"{item.path}: {item.due}")

# Query misc items
misc = query_misc(input_text)
for item in misc.items:
    print(item.title_text)

Running Tests

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

todoosy-0.2.4.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

todoosy-0.2.4-py3-none-any.whl (17.7 kB view details)

Uploaded Python 3

File details

Details for the file todoosy-0.2.4.tar.gz.

File metadata

  • Download URL: todoosy-0.2.4.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for todoosy-0.2.4.tar.gz
Algorithm Hash digest
SHA256 da57d3e54593cc268a6b91c081cb3f3108480ba8655dc7737fec1ab567b7d02d
MD5 6004d5dfd37a2aa5ea571ec0a7d5c76a
BLAKE2b-256 df3d935575a8795e58a3ad2182b4bc1b061a0993465b370c3fa84b3e8ebd5b1b

See more details on using hashes here.

File details

Details for the file todoosy-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: todoosy-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 17.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for todoosy-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b70fc82833757d2f3ccc25c470cbbef21c0f5ab2118a7a3b76d12e91760c72cc
MD5 b8ba09fa83b6dc5da41de66f1133bfac
BLAKE2b-256 6e5d291fa854bf59069af210eba3cb5e874149e2c930f947ba5f8a631b98a144

See more details on using hashes here.

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