Skip to main content

Python port of the quill.js delta library that enables operational transformation with aditional functionality for rendering html

Project description

Delta (Python Port)

Python port of the javascript Delta library for QuillJS: https://github.com/quilljs/delta

Some basic pythonizing has been done, but mostly it works exactly like the above library.

There is no other python specific documentation at this time, sorry. Please see the tests for reference examples.

Install with Poetry

With HTML rendering:

> poetry add -E html quill-delta

Without HTML rendering:

> poetry add quill-delta

Install with pip

Note: If you're using zsh, see below.

With HTML rendering:

> pip install quill-delta[html]

With HTML rendering (zsh):

> pip install quill-delta"[html]"

Without HTML rendering:

> pip install quill-delta

Rendering HTML in Python

This library includes a module delta.html that renders html from an operation list, allowing you to render Quill Delta operations in full from a Python server.

For example:

from delta import html

ops = [ 
    { "insert":"Quill\nEditor\n\n" },
    { "insert": "bold",
      "attributes": {"bold": True}},
    { "insert":" and the " },
    { "insert":"italic",
      "attributes": { "italic": True }},
    { "insert":"\n\nNormal\n" },
]

html.render(ops)

Result (line formatting added for readability):

<p>Quill</p>
<p>Editor</p>
<p><br></p>
<p><strong>bold</strong> and the <em>italic</em></p>
<p><br></p>
<p>Normal</p>

See test_html.py for more examples.

Developing

Setup

If you'd to contribute to quill-delta-python, get started setting your development environment by running:

Checkout the repository

> git clone https://github.com/forgeworks/quill-delta-python.git

Make sure you have python 3 installed, e.g.,

> python --version

From inside your new quill-delta-python directory:

> python3 -m venv env
> source env/bin/activate
> pip install poetry
> poetry install -E html

Tests

To run tests do:

> py.test

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

quill-delta-1.0.3.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

quill_delta-1.0.3-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file quill-delta-1.0.3.tar.gz.

File metadata

  • Download URL: quill-delta-1.0.3.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.1 CPython/3.8.5 Darwin/19.4.0

File hashes

Hashes for quill-delta-1.0.3.tar.gz
Algorithm Hash digest
SHA256 937b67725489b5406038715897a5f2795eda3d4dd85f4d9fcebbc9c22462523a
MD5 518d02f0940c104470b8742e47ef71dd
BLAKE2b-256 48d15e3baaef4b835c5fd435c2a78c120483e959d94d5a8bd51b5d9bbb0b9611

See more details on using hashes here.

File details

Details for the file quill_delta-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: quill_delta-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.1 CPython/3.8.5 Darwin/19.4.0

File hashes

Hashes for quill_delta-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d2fbdcb04231d16108487862136e5170c2fbfc8051519f20a6ac455a6f4fd301
MD5 9c4e789b67acfc1a69f080af5ff0b28f
BLAKE2b-256 37ba19e77d8e1643f3c750df22cbaa6065b407a20f2060199d3a598c41e4cd2d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page