65 lines
4 KiB
Text
65 lines
4 KiB
Text
# Target-language (ru) readability checker DATA (pair-14 data-out): the wordlists and DETECTION patterns the
|
||
# TARGET-GENERAL checkers/sanitizer run on ANY →ru output (regardless of source pair). Engine/target data —
|
||
# a no-langpack →ru book (the ja→ru golden) still runs these — so it is embedded here, not a book pack; the
|
||
# checker/sanitizer ALGORITHMS stay generic Go. `category<TAB>value`; value VERBATIM (a regex or a literal);
|
||
# lines are grouped by category IN ORDER (order matters for the sanitizer preamble preview). Add a target =
|
||
# add data/target-<tgt>.txt + its accessor entry.
|
||
#
|
||
# broken-word: a Russian word ending in this suffix is a mangled infinitive (no valid word ends in «-йть»).
|
||
broken_suffix йть
|
||
# yofikator homograph whitelist: е-spellings that are DISTINCT words from their ё-counterpart (все≠всё,
|
||
# небо≠нёбо, берет≠берёт …), so the inconsistency rule must NOT flag «все»+«всё» as one word two ways.
|
||
yo_homograph все
|
||
yo_homograph всех
|
||
yo_homograph всем
|
||
yo_homograph всеми
|
||
yo_homograph небо
|
||
yo_homograph небом
|
||
yo_homograph узнаем
|
||
yo_homograph узнаете
|
||
yo_homograph узнает
|
||
yo_homograph падеж
|
||
yo_homograph падежа
|
||
yo_homograph совершенный
|
||
yo_homograph совершенное
|
||
yo_homograph совершенная
|
||
yo_homograph совершенно
|
||
yo_homograph совершенны
|
||
yo_homograph чем
|
||
yo_homograph тем
|
||
yo_homograph тема
|
||
yo_homograph теме
|
||
yo_homograph темы
|
||
yo_homograph берет
|
||
yo_homograph берете
|
||
yo_homograph берета
|
||
yo_homograph осел
|
||
yo_homograph осла
|
||
yo_homograph ослы
|
||
yo_homograph ослов
|
||
yo_homograph мел
|
||
yo_homograph мела
|
||
yo_homograph лен
|
||
yo_homograph лена
|
||
yo_homograph нес
|
||
yo_homograph несем
|
||
yo_homograph несет
|
||
yo_homograph вел
|
||
yo_homograph ведет
|
||
yo_homograph ведем
|
||
# magnitude_stem: Russian magnitude WORD stem → base-10 exponent, for the number-magnitude gate (a stem
|
||
# covers [base, base+2] since an unseen multiplier can lift it two orders). `magnitude_stem<TAB>stem<TAB>exp`.
|
||
magnitude_stem тысяч 3
|
||
magnitude_stem миллион 6
|
||
magnitude_stem миллиард 9
|
||
magnitude_stem триллион 12
|
||
# sanitizer DETECTION patterns (pair-14 data-out). The sanitizer is isRuTarget-gated, so these are
|
||
# ru-target data; the strip/detect ALGORITHM stays in sanitizer.go. `sanitizer_preamble` is ORDERED
|
||
# (detectLeadingPreamble returns the FIRST match's preview). Values VERBATIM (regexes).
|
||
sanitizer_preamble (?is)^\s*(?:вот|представляю|привожу|держите)\s+[^\n:]{0,40}?(?:отредактированн|исправленн|улучшенн)[а-яё]+\s+(?:перевод|текст|вариант)[а-яё]*[^\n:]{0,120}?:
|
||
sanitizer_preamble (?is)^\s*(?:отредактированн|исправленн|улучшенн)[а-яё]+\s+(?:перевод|текст|вариант)[а-яё]*[^\n:]{0,120}?:
|
||
sanitizer_preamble (?is)^\s*(?:вот\s+)?перевод\s+(?:фрагмента|текста|отрывка|главы|черновика)\s*:
|
||
sanitizer_preamble (?is)^\s*ниже\s+(?:привед[её]н|представлен|дан|след)[а-яё]*\s+[^\n:]{0,40}?(?:перевод|отредактированн|текст)[а-яё]*[^\n:]{0,20}?:
|
||
sanitizer_trailing_note (?i)^[*_>\s-]{0,4}(?:(?:примечани[ея]|заметк[аи]|комментари[йяю]|пояснени[ея]|сноск[аи])\s*:|(?:примечани[ея]|заметк[аи]|комментари[йяю])\s+(?:переводчик|редактор)[а-яё]*|прим\.\s*(?:перев|ред)\.?)
|
||
sanitizer_edit_meta (?im)^[*_>\s-]{0,4}(?:(?:внесённ|внесен)[а-яё]+\s+правк|основн[а-яё]+\s+правк[а-яё]*(?:\s+для\s+справк[а-яё]+|\s*:)|что\s+(?:было\s+)?(?:изменен|исправлен)|список\s+(?:правок|изменений)|список\s+внесённых)
|
||
sanitizer_invalid_sign (?i)(?:^|\P{L})[ъь][а-яё]|[ъь][ъь]
|