Commit Graph

122 Commits

Author SHA1 Message Date
erjemin c54ae63030 mod: v0.1.4 v0.1.4 2026-02-03 02:15:56 +03:00
erjemin 00c80b79f1 mod: Use node separators and placeholders for robust HTML processing
1. Защита тегов: Защищенные теги (<code>, <script> и т.д.) теперь физически заменяются на плейсхолдеры (\uFFFC) в DOM-дереве перед обработкой. Это предотвращает "протекание" контекста (например, склеивание слов через код) и защищает содержимое тегов от изменений.

2. Маркеры границ: При сборке "супер-строки" (для контекстной обработки) между всеми текстовыми узлами вставляются специальные разделители (\uFFFF). Это позволяет корректно восстанавливать текст по узлам, даже если длина текста изменилась (например, Unbreakables удалил лишние пробелы). Раньше мы полагались на карту длин (lengths_map), что приводило к смещению текста при любых изменениях длины.
2026-02-03 02:04:46 +03:00
erjemin f3a651a54f fix: Protect tags with placeholders to prevent text shifting and context leakage
1. Защита тегов: Внедрили механизм _hide_protected_tags / _restore_protected_tags с использованием плейсхолдера ___ETPGRF_PROTECTED___. Это решило проблему "протекания" контекста через защищенные теги (например, союз "и" больше не прыгает через <code>).

2. Фикс тестов: Обновили тесты, чтобы они учитывали реальное поведение BeautifulSoup (закрытие тегов) и Unbreakables (схлопывание пробелов).
2026-02-03 00:57:46 +03:00
erjemin fe6f2a1522 mod: Демо.. 2026-01-19 21:32:41 +03:00
erjemin 57b8f4f74a mod: Демо. 2026-01-19 21:31:26 +03:00
erjemin 6f5551ec29 mod: Демо. 2026-01-19 21:31:09 +03:00
erjemin d1b8728002 mod: Демо+ 2026-01-19 21:30:44 +03:00
erjemin 604d510b24 mod: Демо 2026-01-19 21:29:35 +03:00
erjemin aa2112669f mod: правки для версии 0.1.3 v0.1.3 2026-01-11 19:04:04 +03:00
erjemin d94815d7ee mod: избавляемся от паразитного "обертывания" в <html> и <body>... 2026-01-11 18:41:42 +03:00
erjemin cb31c5a3b7 add: добавлены тесты, для проверки обёртывания в <html> и <body> 2026-01-11 17:08:41 +03:00
erjemin 97777a7d0a mod: minor 2025-12-27 23:16:02 +03:00
erjemin 28b74f0d7e mod: 0.1.2 description v0.1.2 2025-12-27 21:39:04 +03:00
erjemin f35a48a0ae version to 0.1.2 2025-12-27 21:30:36 +03:00
erjemin 7a7f9dc4cc Fix: Add missing 'regex' dependency, bump version to 0.1.1 2025-12-27 21:27:49 +03:00
erjemin 8f01b1961e add: Add library architecture specs (for LLM) 2025-12-25 13:04:50 +03:00
erjemin a77cd3fa46 mov: examples 2025-12-24 15:27:40 +03:00
erjemin 9d8b5ec55e mod: minor 2025-12-24 15:23:15 +03:00
erjemin 75a78118ba mod: ver 0.1.1 v0.1.1 2025-12-23 23:24:38 +03:00
erjemin 6b07fd472b mod: minor 2025-12-23 22:32:12 +03:00
erjemin 00efdde999 mod: add repo & mirror 2025-12-23 22:28:44 +03:00
erjemin 2a3f55fb49 mod: install and quick start v0.1.0 2025-12-23 22:06:14 +03:00
erjemin 761f37375f add: pyproject.toml 2025-12-23 22:03:57 +03:00
erjemin 6d2f3fffa7 mod: credits 2025-12-23 18:43:40 +03:00
erjemin 80dde55f42 mod: Висячая пунктуация в конвейре 2025-12-23 17:19:42 +03:00
erjemin 22ddf6ef11 add: Висячая пунктуация работает (кроме редких случаев когда пробел, или его отуствие, попадает на следующий bs-узел) 2025-12-23 17:10:56 +03:00
erjemin d4aa437558 mod: Санитайзер оптимизирован и должен работать быстрее. 2025-12-19 14:48:55 +03:00
erjemin cd1be6bf27 mod: Санитайзер добавлен в конвейер типографа 2025-12-19 14:33:46 +03:00
erjemin 48c90409b8 mod: Санитайзер для очистки от HTML (несколько режимов) 2025-10-28 23:46:38 +03:00
erjemin 57fb4914d8 mod: немного описания в тесте самозакрывающихся тегов 2025-10-28 23:45:14 +03:00
erjemin 65a04e6c44 mod: описание модуля висячей типографики + 2025-10-28 23:43:37 +03:00
erjemin 41f4090439 mod: описание модуля висячей типографики 2025-10-23 20:07:08 +03:00
erjemin 579903cc6d mod: двухпроходный конвейер типографа (теперь проблеы перед предлогами и кавычками не ломаются из-за html-тегов) 2025-10-12 20:16:02 +03:00
erjemin 4e26952c8b mod: закрывающая кавычка перед точкой + 2025-10-09 12:27:58 +03:00
erjemin d77f1db5c2 mod: закрывающая кавычка перед точкой 2025-10-09 12:18:32 +03:00
erjemin 78604a83f5 mod: тесты конвейера + 2025-10-05 18:12:34 +03:00
erjemin ab82f2ffd8 mod: исправлена ошибка с союзом "и" и "как" + 2025-10-05 18:10:06 +03:00
erjemin fff9dda8a0 mod: исправлена ошибка с союзом "и" и "как" 2025-10-05 18:07:08 +03:00
erjemin 38581221b4 mod: Порядок правил 2025-10-05 16:53:51 +03:00
erjemin 5adad34fa2 mod: Конвейер типографа с рекурсивным обходом DOM 2025-10-05 14:12:09 +03:00
erjemin b814504d1e add: Препозиционные сокращения ('AO', 'ЗАО', 'НКО', и прочее-прочее) 2025-10-03 01:14:28 +03:00
erjemin 79cc4e03cf add: Препозиционные сокращения ('и.о.', 'т.о.', 'т.к.', 'т.е.' и прочее-прочее) 2025-10-03 01:00:03 +03:00
erjemin ccab350cb3 add: QR-код для сбора средств (на самом деле чтоб не забыть, какие пластинки заказываю) 2025-10-02 20:00:56 +03:00
erjemin 38e8e3229b add: Финальные сокращения ('т.д.', 'т.п.', 'др.' и 'пр.') 2025-10-01 13:10:11 +03:00
erjemin f090988b66 mod: Документация+ (+предлоги/частицы, +компоновка) + 2025-10-01 13:03:57 +03:00
erjemin cc367482aa mod: Документация+ (+предлоги/частицы, +компоновка) 2025-09-24 00:42:00 +03:00
erjemin 5e533d75f5 mod: Документация (+предлоги/частицы, +компоновка) 2025-09-23 21:06:19 +03:00
erjemin ddeb7c6d99 add: LayoutProcessor - обработка едениц измерения (кажется все++ и реализована безопасность от CHAR_UNIT_SEPARATOR) 2025-09-22 10:27:59 +03:00
erjemin fb9d7f9072 add: LayoutProcessor - обработка едениц измерения (кажется все++ и реализована безопасность от CHAR_UNIT_SEPARATOR) 2025-09-22 10:26:25 +03:00
erjemin f1b59332f1 add: LayoutProcessor - обработка едениц измерения (кажется все++) 2025-09-22 01:35:50 +03:00