From f5427b0db79f6d04c10badc63a9bce0a6b28cd0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Sun, 12 Jul 2026 09:14:22 +0400 Subject: [PATCH] =?UTF-8?q?replacer.py:=20=D1=83=D0=B4=D0=B0=D0=BB=D1=91?= =?UTF-8?q?=D0=BD=20replace=5Fin=5Ftext=20(=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D1=91=D0=BD=20=D0=BD=D0=B0=20apply=5Freplacements=20=D0=BD?= =?UTF-8?q?=D0=B0=D0=BF=D1=80=D1=8F=D0=BC=D1=83=D1=8E)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- drhider/replacer.py | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/drhider/replacer.py b/drhider/replacer.py index a4b8f12..2b5dbc3 100644 --- a/drhider/replacer.py +++ b/drhider/replacer.py @@ -1,10 +1,10 @@ """ Проход 2: замена сущностей в документах. -Три метода: -1. _apply_replacements — замена в plain-тексте (ядро) -2. _replace_in_docx — замена в DOCX с сохранением форматирования -3. _replace_in_text — замена в plain-тексте → bytes +Два метода: +1. apply_replacements — замена в Markdown/plain-тексте (основной) +2. replace_in_docx — замена в DOCX с сохранением форматирования + (для опционального DOCX-выхода, будет добавлен позже) """ import io @@ -99,22 +99,3 @@ def replace_in_docx(doc, mapping: Dict[str, str], sorted_keys: List[str]) -> byt buf = io.BytesIO() doc.save(buf) return buf.getvalue() - - -def replace_in_text(text: str, fname: str, mapping: Dict[str, str], sorted_keys: List[str]) -> bytes: - """Заменить сущности в plain-тексте. - - Для PDF и прочих нетекстовых форматов — отдаём текст. - (MVP: без сохранения форматирования PDF). - - Args: - text: Исходный текст - fname: Имя файла (для будущего использования — разные форматы) - mapping: Словарь замен - sorted_keys: Ключи mapping по убыванию длины - - Returns: - Бинарное содержимое с заменами (UTF-8) - """ - replaced = apply_replacements(text, mapping, sorted_keys) - return replaced.encode('utf-8')