Skip to main content

A markdown extension for converting Leiden+ epigraphic text to TEI Epidoc XML

Project description

LeidenMark

$ pip install leidenmark

A Python Markdown extension for converting Leiden+ epigraphic text to TEI XML/HTML. Inspired by the Brill plain text (BPT) format that aims to incorporate Leiden+ into a Markdown-based syntax.

>>> from leidenmark import leiden_plus
>>> content = """\
<D=.r<=
1. Lorem ipsum dolor
vac.1lin
2. sit amet, con[ca.3]c
3.-etur adipiscing
=>=D>
<D=.v<=
lost.2lin
6. ut labore et dol
7.-ore magna aliqua
=>=D>"""
>>> leiden_plus(content)

The output of the above lines is the following XML snippet:

<div n="r" type="textpart">
  <ab>
    <l n="1">Lorem ipsum dolor</l>
    <space quantity="1" unit="line"/>
    <l n="2">sit amet, con<gap precision="low" quantity="3" unit="character"/>c</l>
    <l break="no" n="3">etur adipiscing</l>
  </ab>
</div>
<div n="v" type="textpart">
  <ab>
    <gap quantity="2" unit="line"/>
    <l n="6">ut labore et dol</l>
    <l break="no" n="7">ore magna aliqua</l>
  </ab>
</div>

This extension can also be used in combination with other markdown extensions by importing the extension LeidenPlus directly:

>>> from markdown import markdown
>>> from leidenmark import LeidenPlus
>>> markdown(content, extensions = [LeidenPlus()]) # Other extensions can be added to this list

Configuration

Given that this is a Markdown extension, conventions like *italics* and **bold** will also be recognized an converted (these in particular will additionally be transformed to the TEI element <hi>). Though these are in principle not part of the Leiden+ syntax, in practice the use of italics and boldface is still encountered a lot. Therefore, support is maintaned by default, which can be switched off by passing strict = True:

>>> leiden_plus(content, strict = True)

NB: The blockprocessors for paragraphs and ordered list are always switched off, because they interfer too much with Leiden+.

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

leidenmark-0.1.7.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

leidenmark-0.1.7-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file leidenmark-0.1.7.tar.gz.

File metadata

  • Download URL: leidenmark-0.1.7.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.7.4

File hashes

Hashes for leidenmark-0.1.7.tar.gz
Algorithm Hash digest
SHA256 c6583b748d20f09c9b300191d3434e01b950f0228a6fcfbb34829d83a3a4dba9
MD5 663ce47596901028221562713bff31f0
BLAKE2b-256 58367da1868db706607f4759a6338b2f1641de647cf4cff6c04b9ba41f21e9d3

See more details on using hashes here.

File details

Details for the file leidenmark-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: leidenmark-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.7.4

File hashes

Hashes for leidenmark-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 31aeb4fa653134c4ab0afe32ced8b40695f123006617489813d7e82928162b97
MD5 8ad4c740354a725fe6faa151da33c808
BLAKE2b-256 ce9ee3e4f94d52a9be715b415f32557e1f3cb79b16b62d759743e464aac30fab

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