Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MVP for Proskomma-powered Slate Scripture editing #140

Open
mvahowe opened this issue Dec 9, 2021 · 1 comment
Open

MVP for Proskomma-powered Slate Scripture editing #140

mvahowe opened this issue Dec 9, 2021 · 1 comment
Labels
Discussion Editor Support Getting Proskomma to play nicely with editors EPIC Mutability
Milestone

Comments

@mvahowe
Copy link
Owner

mvahowe commented Dec 9, 2021

No description provided.

@mvahowe mvahowe added Discussion Mutability EPIC Editor Support Getting Proskomma to play nicely with editors labels Dec 9, 2021
@mvahowe mvahowe changed the title PoC of Proskomma-powered Slate Scripture editing MVP for Proskomma-powered Slate Scripture editing Dec 9, 2021
@mvahowe
Copy link
Owner Author

mvahowe commented Dec 9, 2021

MVP Requirements

  • Roundtrip canonical USFM para styles (existing editor functionality)
  • Roundtrip chapter and verse markup including verse ranges (existing editor functionality)
  • Roundtrip headings (existing editor functionality, important UI issues to explore)
  • mt (not editable)

Out of Scope (unless easy)

  • character styles
  • milestones that span paragraphs
  • cp, vp, cl...
  • footnotes and xrefs
  • word-level markup, attributes etc
  • introductions
  • extended markup such as sidebars

General Approach

  • Proskomma generates AGHAST for the base sequence (main/canonical or introduction) including headings. Other grafts are present as references, eg mt. The AGHAST record or its wrapper includes the heading ids.

  • Handling headings as discrete sequences within markup where blocks do not contain content is going to be weird, one way or another. Maybe

    • Heading starts with heading class milestone, similar to, say \p
    • Heading ends with next heading/para milestone or EOF
    • Start-heading milestone contains sequence id or null (for new heading)

    ie headings behave like paragraph milestones in the editor, except that they may carry a sequence id.

  • The editor should read back the AGHAST produced after each mutation, to avoid any skew, and because...

  • The editor produces similar AGHAST for mutations, including the base sequence id. Unchanged or edited headings include the id. New headings have no id (Proskomma will create a new sequence and return the id in the next AGHAST read.) Sequences for headings that are no longer present will be GC'd by Proskomma.

Pk Tasks

  • Add mutation input cleaning (akin to what happens when USFM is read, eg move widow and orphan verse and chapter tags)
  • Generate cv-structured AGHAST for main sequence using Pk render model
  • Convert cv-structured AGHAST into Pk input format using utility function
  • Add AGHAST validator (JSON schema)

Resources

@mvahowe mvahowe added this to the 0.9 - Editing milestone Apr 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion Editor Support Getting Proskomma to play nicely with editors EPIC Mutability
Projects
None yet
Development

No branches or pull requests

1 participant