Synchronize chapter and navigation translations with Chinese prose indentation

This commit is contained in:
Kai Tan
2026-10-08 07:59:01 +08:00
parent caf9d8f4bb
commit a158b4e26c
18 changed files with 613 additions and 11 deletions
+4 -1
View File
@@ -6,6 +6,7 @@ from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[1]))
from src.preprocessing.epub_cleaner import EpubCleaner
from src.preprocessing.text_extractor import FineGrainedExtractor
from src.preprocessing.navigation import prepare_navigation
from src.common.data_model import BookStructure
from src.assembly.format_restorer import FormatRestorer
from src.assembly.builder import BilingualBuilder
@@ -23,10 +24,12 @@ def main():
work=args.out/source.stem
structure=BookStructure.load(EpubCleaner(source,work).clean())
entries=FineGrainedExtractor().extract(structure)
prepare_navigation(source,structure,entries)
bad=[e.entry_id for e in entries if not FormatRestorer().restore(e.original_text,e.placeholders,original_text=e.original_text)[1]]
output=BilingualBuilder(work,source).build(structure,work/'roundtrip.epub')
before,after=audit_epub(source),audit_epub(output)
row.update(entries=len(entries),format_failures=bad,source_issues=len(before['issues']),
row.update(entries=len(entries),navigation_titles=len(structure.navigation_titles),
unbound_titles=[r["source_label"] for r in structure.navigation_titles if r.get("binding_note")],format_failures=bad,source_issues=len(before['issues']),
new_issues=compare_audits(before,after))
except Exception as exc:
row['error']=str(exc)