leocore  leocore

Leo Core

A python binary extension module written in Rust implementing core functionality for Leo editor.

Features

  • parses Leo documents in *.leo xml format
  • parses Leo derived files (at-file format)
  • all positions iterator
  • visible positions iterator
  • move node left, right, up and down
  • promote/demote node
  • clone node
  • insert new node
  • delete node
  • update node attributes
  • collapse/expand node
  • writing at-clean nodes
  • all operations are undo-able

Install

Here are some prebuilt wheels for this library:

You can download wheel appropriate for your platform and then use:

pip install <path to downloaded wheel>
Or you can just copy link to the appropriate wheel and then:
pip install <copied url>
Important: you'l have to update pip before installing this module on Windows.

These wheels should be compatibile with Python 3.6 and later versions. If you find any problem, please report it.

Todo

  • writing at-file files
  • updating at-clean files edited externally
  • parsing at-auto files
  • syntax highlighting