ace8b61ae3
fix: исправлено удаление двойного экранирования &
2026-02-26 14:29:54 +03:00
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
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
d94815d7ee
mod: избавляемся от паразитного "обертывания" в <html> и <body>...
2026-01-11 18:41:42 +03:00
cb31c5a3b7
add: добавлены тесты, для проверки обёртывания в <html> и <body>
2026-01-11 17:08:41 +03:00
22ddf6ef11
add: Висячая пунктуация работает (кроме редких случаев когда пробел, или его отуствие, попадает на следующий bs-узел)
2025-12-23 17:10:56 +03:00
cd1be6bf27
mod: Санитайзер добавлен в конвейер типографа
2025-12-19 14:33:46 +03:00
48c90409b8
mod: Санитайзер для очистки от HTML (несколько режимов)
2025-10-28 23:46:38 +03:00
57fb4914d8
mod: немного описания в тесте самозакрывающихся тегов
2025-10-28 23:45:14 +03:00
579903cc6d
mod: двухпроходный конвейер типографа (теперь проблеы перед предлогами и кавычками не ломаются из-за html-тегов)
2025-10-12 20:16:02 +03:00
4e26952c8b
mod: закрывающая кавычка перед точкой +
2025-10-09 12:27:58 +03:00
d77f1db5c2
mod: закрывающая кавычка перед точкой
2025-10-09 12:18:32 +03:00
78604a83f5
mod: тесты конвейера +
2025-10-05 18:12:34 +03:00
fff9dda8a0
mod: исправлена ошибка с союзом "и" и "как"
2025-10-05 18:07:08 +03:00
5adad34fa2
mod: Конвейер типографа с рекурсивным обходом DOM
2025-10-05 14:12:09 +03:00
b814504d1e
add: Препозиционные сокращения ('AO', 'ЗАО', 'НКО', и прочее-прочее)
2025-10-03 01:14:28 +03:00
79cc4e03cf
add: Препозиционные сокращения ('и.о.', 'т.о.', 'т.к.', 'т.е.' и прочее-прочее)
2025-10-03 01:00:03 +03:00
38e8e3229b
add: Финальные сокращения ('т.д.', 'т.п.', 'др.' и 'пр.')
2025-10-01 13:10:11 +03:00
fb9d7f9072
add: LayoutProcessor - обработка едениц измерения (кажется все++ и реализована безопасность от CHAR_UNIT_SEPARATOR)
2025-09-22 10:26:25 +03:00
21d85c984d
add: LayoutProcessor - обработка едениц измерения (кажется все)
2025-09-22 01:27:45 +03:00
67c5bd805a
add: LayoutProcessor - обработка едениц измерения (кажется все)
2025-09-22 01:04:38 +03:00
c3e65700b1
add: LayoutProcessor - обработка едениц измерения (draft)
2025-09-21 20:23:04 +03:00
a26c9107f2
add: LayoutProcessor - обработка тонких пробелов в инициалах и акронимах
2025-08-31 15:41:44 +03:00
4918645496
add: LayoutProcessor - обработка неразрывных пробелов вокруг тире и инициалов
2025-08-25 18:15:10 +03:00
9a37467bfc
add: SymbolsProcessor - обработка тире и псевдографики
2025-08-22 15:45:38 +03:00
39ef02884e
mod: переименование переменных для символов
2025-08-22 15:37:02 +03:00
b4248db063
add: обработка кавычек
2025-08-17 01:12:09 +03:00
40fd4b5891
mod: +++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-11 22:18:06 +03:00
c4df3ba9c1
mod: +++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-11 21:38:49 +03:00
960ec97093
mod: ++++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-09 11:31:30 +03:00
a16d4f7416
mod: ++++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-08 18:16:35 +03:00
679c9770f0
mod: +++приоритеты и тесты html-мнемоник для decode_to_unicode()
2025-08-05 23:32:28 +03:00
34bd07bac0
mod: ++тесты html-мнемоник для decode_to_unicode()
2025-08-05 23:18:08 +03:00
3684088fd0
mod: +тесты html-мнемоник для decode_to_unicode() ..
2025-08-05 22:38:28 +03:00
65970f3170
mod: тесты всех html-мнемоник для decode_to_unicode() .
2025-08-05 12:40:31 +03:00
1684649607
mod: тесты всех html-мнемоник для decode_to_unicode()
2025-08-05 12:29:32 +03:00
134f3807b2
add: config.py как единый источник правды (на базе html.entities)
2025-08-03 20:00:59 +03:00
cf047a2552
mod: исправления utf <-> менемоники и тесты
2025-08-02 18:17:45 +03:00
27c950f28d
mad: тест кодека, ещё больше html-мнемоник..
2025-08-02 11:46:35 +03:00
6ad0da6097
add: тест кодека html-мнемоник.
2025-08-02 11:01:32 +03:00
6c29d3e5fb
add: тест кодека html-мнемоник
2025-08-01 20:18:31 +03:00
19dab28ecb
mod: тесты переносов в английских словах
2025-07-30 19:27:21 +03:00
d716d394bb
mod: изменен алгоритм переноса в русских словах (императивнный на декларативный) с весами и приоритетами
2025-07-24 21:02:40 +03:00
086adc1f7b
mod: изменен алгоритм переноса в русских словах
2025-07-24 13:16:18 +03:00
aa3939d1c6
add: тест на переносы в словах (рус)
2025-07-23 18:58:46 +03:00
c3a19f02fc
---: minor
2025-07-22 14:01:26 +03:00
acc592426f
add: тесты для unbreakables.py
2025-07-22 13:12:07 +03:00