Skip to content

Latest commit

 

History

History
140 lines (115 loc) · 4.34 KB

readme.md

File metadata and controls

140 lines (115 loc) · 4.34 KB

Prereform2modern

Преобразует текст из дореформенной орфографии в современную. Работает в Py3.


  Установка

pip install prereform2modern

  Запуск из командной строки:

 Длинный способ

python -m prereform2modern.translit_from_string "Онъ стоялъ подлѣ письменнаго стола"
Он стоял подле письменного стола

 Короткий способ

translit "Онъ стоялъ подлѣ письменнаго стола"

 Флаг -t отображает изменённые слова в старой орфографии.

translit -t "Онъ стоялъ подлѣ письменнаго стола"
Он{Онъ} стоял{стоялъ} подле{подлѣ} письменного{письменнаго} стола

  Запуск из интерпретатора:

from prereform2modern import Processor
orig_text = "Онъ стоялъ подлѣ письменнаго стола"
text_res, changes, s_json = Processor.process_text(
    text=orig_text,
    show=False,
    delimiters=False,
    check_brackets=False
    )

  Выдача

  • text_res: str

 Преобразованный текст.

print(text_res)
Он стоял подле письменного стола
  • changes: str

 Произведенные изменения.

print(changes)
Онъ --> Он
стоялъ --> стоял
подлѣ --> подле
письменнаго --> письменного
  • str_json: str

 Сведения о всех словах и символах в формате json.

import json
json.loads(s_json)
{'0': {'old_word': 'Онъ', 'type': 'word', 'word': 'Он'},
'1': {'old_word': '', 'type': 'punct', 'word': ' '},
'2': {'old_word': 'стоялъ', 'type': 'word', 'word': 'стоял'},
'3': {'old_word': '', 'type': 'punct', 'word': ' '},
'4': {'old_word': 'подлѣ', 'type': 'word', 'word': 'подле'},
'5': {'old_word': '', 'type': 'punct', 'word': ' '},
'6': {'old_word': 'письменнаго', 'type': 'word', 'word': 'письменного'},
'7': {'old_word': '', 'type': 'punct', 'word': ' '},
'8': {'old_word': '', 'type': 'word', 'word': 'стола'}}

  Параметры

method Processor.process_text(
    text, show, delimiters, check_brackets
    )
  • text: str

 Оригинальный текст в дореформенной орфографии.

  • show: boolean

 Включает в результат заменённые слова в дореформенной орфографии. Если параметр check_brackets=True, то заменённые слова показываются при любом значении параметра show.

  • delimiters: list из трех элементов типа str

 Используется для обозначения заменённых слов. Первый элемент помещается перед новым словом, а другие два элемента выделяют заменённое слово. Так, можно использовать скобки:

delimiters=['', '{', '}']
text="примеръ"
пример{примеръ}

 Или, например, теги XML (про использование тега <choice> см. здесь):

delimiters=['<choice><reg>', '</reg><orig>', '</orig></choice>']
<choice><reg>пример</reg><orig>примеръ</orig></choice>
  • check_brackets: boolean

 Помечает редакторскую правку.

text='Пройдя комнату, такъ [называемую], офиціанскую'
delimiters=['', '{', '}']
check_brackets=True
Пройдя комнату, так{такъ} <choice original_editorial_correction='[называемую]'><sic></sic>
<corr>называемую</corr></choice>, официанскую{офицiанскую}