Skip to content

Handle hp:tab across parsing and text export#26

Merged
airmang merged 1 commit intomainfrom
pr2-hp-tab-support
Apr 1, 2026
Merged

Handle hp:tab across parsing and text export#26
airmang merged 1 commit intomainfrom
pr2-hp-tab-support

Conversation

@airmang
Copy link
Copy Markdown
Owner

@airmang airmang commented Apr 1, 2026

Summary

  • preserve hp:tab as a typed run child in the parser model
  • render hp:tab and ctrl id="tab" as tab text in paragraph/export/extractor paths
  • preserve \t semantics when setting paragraph text and after save/open roundtrips
  • add targeted regression tests for parser, exporters, extractor, and document roundtrip

Why

hp:tab content was being dropped or flattened inconsistently across high-level text access and exporter paths. This change keeps tab semantics intact without adding exam-specific rules.

Testing

  • .venv/bin/python -m pytest -q tests/test_hp_tab_support.py tests/test_inline_models.py tests/test_text_extractor_annotations.py tests/test_document_formatting.py
  • .venv/bin/python -m pytest -q tests/test_new_features.py tests/test_integration_roundtrip.py
  • .venv/bin/python -m pytest -q tests/test_paragraph_section_management.py

@airmang airmang force-pushed the pr2-hp-tab-support branch from c0f22bd to f411deb Compare April 1, 2026 14:40
@airmang airmang merged commit 1bece2d into main Apr 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant