modules

geometor.proclus

GEOMETOR Proclus: Multi-Track Book Codex and Friedlein Citation Concordance.

Scholarly digital reconstruction and apparatus for Proclus Diadochus’s In Primum Euclidis Elementorum Librum Commentarii (Commentary on the First Book of Euclid’s Elements, c. 470 AD), grounded in Gottfried Friedlein’s 1873 Teubner Greek edition and Thomas Taylor’s 1788–1789/1792 English translation, and cross-linked with geometor/euclid, geometor/elements, and geometor/hoenen.

Submodules

Attributes

CODEX_UNITS

FRIEDLEIN_SECTIONS

__version__

Classes

CodexUnitSpec

Canonical unit in the Multi-Track Book Codex (docsrc/in_euclidem/).

FriedleinLocus

Normalized representation of a Friedlein (1873) page-and-line citation.

SectionSpec

Fine-grained section within Proclus's Commentary mapped by Friedlein page/line.

Functions

load_concordance([path]) → dict[str, Any]

Load concordance.json.

load_sources_manifest([path]) → dict[str, Any]

Load sources_manifest.json.

parse_friedlein_locus(locus[, display_hint]) → FriedleinLocus

Parse a Friedlein (1873) page/line locus key into structured page and line bounds.

resolve_friedlein_section(page[, line]) → SectionSpec

Resolve a Friedlein (1873) page and optional line number to its Codex section.

verify_concordance([concordance_path, manifest_path, ...]) → dict[str, Any]

Verify concordance integrity, source SHA-256 hashes, and sibling citation coverage.

Package Contents

geometor.proclus.CODEX_UNITS: tuple[CodexUnitSpec, ...]
geometor.proclus.FRIEDLEIN_SECTIONS: tuple[SectionSpec, ...]
class geometor.proclus.CodexUnitSpec

Canonical unit in the Multi-Track Book Codex (docsrc/in_euclidem/).

slug: str
number_label: str
title: str
subtitle: str
friedlein_start: int
friedlein_end: int
taylor_book: str
class geometor.proclus.FriedleinLocus

Normalized representation of a Friedlein (1873) page-and-line citation.

raw: str
start_page: int
start_line: int | None
end_page: int
end_line: int | None
canonical: str
class geometor.proclus.SectionSpec

Fine-grained section within Proclus’s Commentary mapped by Friedlein page/line.

unit_slug: str
section_id: str
title: str
start_page: int
start_line: int
end_page: int
end_line: int
euclid_element: str | None = None
geometor.proclus.load_concordance(path: pathlib.Path | None = None) → dict[str, Any]

Load concordance.json.

geometor.proclus.load_sources_manifest(path: pathlib.Path | None = None) → dict[str, Any]

Load sources_manifest.json.

geometor.proclus.parse_friedlein_locus(locus: str, display_hint: str = '') → FriedleinLocus

Parse a Friedlein (1873) page/line locus key into structured page and line bounds.

Handles standard Teubner citations ("12.14-22", "103.21-107.10"), whole-page ranges ("64-70", "399-400"), compressed trailing-digit page ranges ("303-4", "323-6", "424-5"), and Hoenen/Heath shorthand keys ("p97", "p185", "65-20", "189.190").

geometor.proclus.resolve_friedlein_section(page: int, line: int | None = None) → SectionSpec

Resolve a Friedlein (1873) page and optional line number to its Codex section.

geometor.proclus.verify_concordance(concordance_path: pathlib.Path | None = None, manifest_path: pathlib.Path | None = None, euclid_citations_path: pathlib.Path | None = None, hoenen_citations_path: pathlib.Path | None = None) → dict[str, Any]

Verify concordance integrity, source SHA-256 hashes, and sibling citation coverage.

geometor.proclus.__version__ = '0.1.0'