Skip to main content

🏛️ Latin scansion engine 🏛️

Supported Python versions CircleCI

This library uses finite-state grammars to automate Latin scansion, with an initial focus on the dactylic hexameters of Virgil.

License

The engine is released under an Apache 2.0 license. Please see LICENSE.txt for details.

Installation

Conda is recommended for a reproducible environment. Assuming that Conda (either Miniconda or Anaconda) is available, the following command creates the environment scansion.

conda env create -f environment.yml

This only needs to be done once. The following command then activates the environment.

conda activate scansion

This second step needs to be repeated each time you start a new shell.

Installation

  1. Compile the grammar assets:

    make -j -C grammars
    
  2. Generate the textproto library:

    make -C latin_scansion
    
  3. Install the Python library:

    pip install -e .
    

Command-line tools

Installation produces two command-line tools:

  • latin-scan scans a document, generating a human-readable textproto representation of document's scansion. Sample usage:

    latin-scan --far grammars/all.far data/Aeneid/Aeneid01.txt data/Aeneid/Aeneid01.textproto
    
  • latin-validate validates (and optionally, canonicalizes) a textproto document scansion. Sample usage:

    latin-validate data/Aeneid/Aeneid01.textproto
    

Testing

Run:

pytest tests

Authors

Metadata

Release files for latin-scansion 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for latin-scansion 0.1.3
File Size Uploaded
latin_scansion-0.1.3.tar.gz 10.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for latin-scansion 0.1.3
File Interpreter ABI Platform
latin_scansion-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 28.0 kB

Release files / latin_scansion-0.1.3.tar.gz

Download URL latin_scansion-0.1.3.tar.gz
Size 10.7 kB
Tags Source
SHA-256 checksum
How to use checksums
20daac188bdce302830771c83ee0f849dedeb541fe1fa51ebddbf64b4ffc45ea
BLAKE2b-256 checksum
How to use checksums
889763d37e8b88f8f00eb10fa9651d03b9e56e6e46a23674bfe3bcfc75b8567d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.12.2

Release files / latin_scansion-0.1.3-py3-none-any.whl

Download URL latin_scansion-0.1.3-py3-none-any.whl
Size 17.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cbf7bc3f7cd0a7868dc73c2393210dfc87106a15cba26ed9034ac82d41ef759f
BLAKE2b-256 checksum
How to use checksums
b0221478fd5a19d9911bdb0e7e3f79869504faa10b894e9499071271c926c1a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.12.2

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page