erjemin
d092cbdb5c
add: правило для ×
2026-03-19 13:16:40 +03:00
erjemin
465dd9e9e6
mod: улучшен алгоритм висячей пунктуации для правого вывешивания. Изменения в левом вывешивании.
2026-03-19 11:03:30 +03:00
erjemin
14ac3682ee
mod: еще немного тестов левой висячей пунктуации.
2026-03-17 14:58:22 +03:00
erjemin
ce3d1c146a
mod: новая схема висячей левой пунктуации (с компенсирующими пробелами)
2026-03-16 13:27:39 +03:00
erjemin
c7d8b18c68
---: minor
2026-03-07 02:14:25 +03:00
erjemin
913f28f2f3
add: санитайзинг плейсхолдеров
2026-03-05 03:31:30 +03:00
erjemin
125c9560b4
mod: добавлены "компенсирующие" пробелы + немного оптимизации в конфигах.
2026-03-05 03:17:48 +03:00
erjemin
9695fe80aa
mod: Отключена опция 'both' для висячей пунктуации
2026-03-04 16:00:51 +03:00
erjemin
d917634787
fix: ошибка, когда тире приходится на границу еденицы измерения.
2026-02-26 19:10:55 +03:00
erjemin
ace8b61ae3
fix: исправлено удаление двойного экранирования &
2026-02-26 14:29:54 +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
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
22ddf6ef11
add: Висячая пунктуация работает (кроме редких случаев когда пробел, или его отуствие, попадает на следующий bs-узел)
2025-12-23 17:10:56 +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
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
fff9dda8a0
mod: исправлена ошибка с союзом "и" и "как"
2025-10-05 18:07:08 +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
38e8e3229b
add: Финальные сокращения ('т.д.', 'т.п.', 'др.' и 'пр.')
2025-10-01 13:10:11 +03:00
erjemin
fb9d7f9072
add: LayoutProcessor - обработка едениц измерения (кажется все++ и реализована безопасность от CHAR_UNIT_SEPARATOR)
2025-09-22 10:26:25 +03:00
erjemin
21d85c984d
add: LayoutProcessor - обработка едениц измерения (кажется все)
2025-09-22 01:27:45 +03:00
erjemin
67c5bd805a
add: LayoutProcessor - обработка едениц измерения (кажется все)
2025-09-22 01:04:38 +03:00
erjemin
c3e65700b1
add: LayoutProcessor - обработка едениц измерения (draft)
2025-09-21 20:23:04 +03:00
erjemin
a26c9107f2
add: LayoutProcessor - обработка тонких пробелов в инициалах и акронимах
2025-08-31 15:41:44 +03:00
erjemin
4918645496
add: LayoutProcessor - обработка неразрывных пробелов вокруг тире и инициалов
2025-08-25 18:15:10 +03:00
erjemin
9a37467bfc
add: SymbolsProcessor - обработка тире и псевдографики
2025-08-22 15:45:38 +03:00
erjemin
39ef02884e
mod: переименование переменных для символов
2025-08-22 15:37:02 +03:00
erjemin
b4248db063
add: обработка кавычек
2025-08-17 01:12:09 +03:00
erjemin
40fd4b5891
mod: +++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-11 22:18:06 +03:00
erjemin
c4df3ba9c1
mod: +++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-11 21:38:49 +03:00
erjemin
960ec97093
mod: ++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-09 11:31:30 +03:00
erjemin
a16d4f7416
mod: ++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-08 18:16:35 +03:00
erjemin
679c9770f0
mod: +++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-05 23:32:28 +03:00
erjemin
34bd07bac0
mod: ++тесты html-мнемоник для decode_to_unicode()
2025-08-05 23:18:08 +03:00
erjemin
3684088fd0
mod: +тесты html-мнемоник для decode_to_unicode() ..
2025-08-05 22:38:28 +03:00
erjemin
65970f3170
mod: тесты всех html-мнемоник для decode_to_unicode() .
2025-08-05 12:40:31 +03:00
erjemin
1684649607
mod: тесты всех html-мнемоник для decode_to_unicode()
2025-08-05 12:29:32 +03:00
erjemin
134f3807b2
add: config.py как единый источник правды (на базе html.entities)
2025-08-03 20:00:59 +03:00
erjemin
cf047a2552
mod: исправления utf <-> менемоники и тесты
2025-08-02 18:17:45 +03:00
erjemin
27c950f28d
mad: тест кодека, ещё больше html-мнемоник..
2025-08-02 11:46:35 +03:00
erjemin
6ad0da6097
add: тест кодека html-мнемоник.
2025-08-02 11:01:32 +03:00
erjemin
6c29d3e5fb
add: тест кодека html-мнемоник
2025-08-01 20:18:31 +03:00