feat(ru): drop obscene lexicon (mat) from the Russian noun list
build / dawg (pull_request) Successful in 24s
build / dawg (pull_request) Successful in 24s
Remove the 11 obscene nouns built on the хуй/еб·ёб/пизд/бляд roots (ахуй, блядь, выблядок, ебальник, еблан, охуение, пизда, пиздец, пиздобол, хуй, хуйня) from the Russian Scrabble/Эрудит dictionary. These are morphologically valid common nouns, so the pipeline admitted them like any other word — OpenCorpora's tagset exposes no obscenity grammeme to filter on. They are vetoed as policy via manual_reject.txt, which is subtracted last in ru_stage2.build(), so no pipeline logic changes: scrabble.txt is the deterministic result of that subtraction and erudit.txt is its Ё→Е fold, regenerated with tools/fold_yo.py. The coarser-but-not-mat муд* (мудак, мудила) and legitimate homographs (очко, сука, моча, дрочёна) are deliberately kept. scrabble.txt 83027 -> 83016, erudit.txt 82985 -> 82974.
This commit is contained in:
@@ -4167,7 +4167,6 @@
|
|||||||
ахтерпик
|
ахтерпик
|
||||||
ахтерштаг
|
ахтерштаг
|
||||||
ахтерштевень
|
ахтерштевень
|
||||||
ахуй
|
|
||||||
ацератерий
|
ацератерий
|
||||||
ацетабулярия
|
ацетабулярия
|
||||||
ацеталь
|
ацеталь
|
||||||
@@ -6747,7 +6746,6 @@
|
|||||||
блюститель
|
блюститель
|
||||||
блюстительница
|
блюстительница
|
||||||
блютус
|
блютус
|
||||||
блядь
|
|
||||||
блямба
|
блямба
|
||||||
бляха
|
бляха
|
||||||
бляшечка
|
бляшечка
|
||||||
@@ -11369,7 +11367,6 @@
|
|||||||
выбивка
|
выбивка
|
||||||
выбирание
|
выбирание
|
||||||
выбленка
|
выбленка
|
||||||
выблядок
|
|
||||||
выбоина
|
выбоина
|
||||||
выбоинка
|
выбоинка
|
||||||
выбой
|
выбой
|
||||||
@@ -19469,8 +19466,6 @@
|
|||||||
дядя
|
дядя
|
||||||
дятел
|
дятел
|
||||||
дятлообразные
|
дятлообразные
|
||||||
ебальник
|
|
||||||
еблан
|
|
||||||
евангелие
|
евангелие
|
||||||
евангелизация
|
евангелизация
|
||||||
евангелизм
|
евангелизм
|
||||||
@@ -45601,7 +45596,6 @@
|
|||||||
охтинка
|
охтинка
|
||||||
охтянин
|
охтянин
|
||||||
охтянка
|
охтянка
|
||||||
охуение
|
|
||||||
охулка
|
охулка
|
||||||
оцеживание
|
оцеживание
|
||||||
оцелот
|
оцелот
|
||||||
@@ -48716,9 +48710,6 @@
|
|||||||
пижончик
|
пижончик
|
||||||
пизанец
|
пизанец
|
||||||
пизанка
|
пизанка
|
||||||
пизда
|
|
||||||
пиздец
|
|
||||||
пиздобол
|
|
||||||
пизолит
|
пизолит
|
||||||
пиит
|
пиит
|
||||||
пиитика
|
пиитика
|
||||||
@@ -77619,8 +77610,6 @@
|
|||||||
худфильм
|
худфильм
|
||||||
худфонд
|
худфонд
|
||||||
худышка
|
худышка
|
||||||
хуй
|
|
||||||
хуйня
|
|
||||||
хук
|
хук
|
||||||
хула
|
хула
|
||||||
хулахуп
|
хулахуп
|
||||||
|
|||||||
@@ -70,3 +70,16 @@
|
|||||||
щелевой
|
щелевой
|
||||||
щелинный
|
щелинный
|
||||||
эскадронный
|
эскадронный
|
||||||
|
# обсценная лексика (мат), корни хуй / еб·ёб / пизд / бляд — вычищается как
|
||||||
|
# политика, а не как «ложное существительное»; строки с «#» отбрасывает cyr_ok
|
||||||
|
ахуй
|
||||||
|
блядь
|
||||||
|
выблядок
|
||||||
|
ебальник
|
||||||
|
еблан
|
||||||
|
охуение
|
||||||
|
пизда
|
||||||
|
пиздец
|
||||||
|
пиздобол
|
||||||
|
хуй
|
||||||
|
хуйня
|
||||||
|
|||||||
@@ -4168,7 +4168,6 @@
|
|||||||
ахтерпик
|
ахтерпик
|
||||||
ахтерштаг
|
ахтерштаг
|
||||||
ахтерштевень
|
ахтерштевень
|
||||||
ахуй
|
|
||||||
ацератерий
|
ацератерий
|
||||||
ацетабулярия
|
ацетабулярия
|
||||||
ацеталь
|
ацеталь
|
||||||
@@ -6752,7 +6751,6 @@
|
|||||||
блюститель
|
блюститель
|
||||||
блюстительница
|
блюстительница
|
||||||
блютус
|
блютус
|
||||||
блядь
|
|
||||||
блямба
|
блямба
|
||||||
бляха
|
бляха
|
||||||
бляшечка
|
бляшечка
|
||||||
@@ -11376,7 +11374,6 @@
|
|||||||
выбивка
|
выбивка
|
||||||
выбирание
|
выбирание
|
||||||
выбленка
|
выбленка
|
||||||
выблядок
|
|
||||||
выбоина
|
выбоина
|
||||||
выбоинка
|
выбоинка
|
||||||
выбой
|
выбой
|
||||||
@@ -19478,8 +19475,6 @@
|
|||||||
дядя
|
дядя
|
||||||
дятел
|
дятел
|
||||||
дятлообразные
|
дятлообразные
|
||||||
ебальник
|
|
||||||
еблан
|
|
||||||
евангелие
|
евангелие
|
||||||
евангелизация
|
евангелизация
|
||||||
евангелизм
|
евангелизм
|
||||||
@@ -45628,7 +45623,6 @@
|
|||||||
охтинка
|
охтинка
|
||||||
охтянин
|
охтянин
|
||||||
охтянка
|
охтянка
|
||||||
охуение
|
|
||||||
охулка
|
охулка
|
||||||
оцеживание
|
оцеживание
|
||||||
оцелот
|
оцелот
|
||||||
@@ -48747,9 +48741,6 @@
|
|||||||
пижончик
|
пижончик
|
||||||
пизанец
|
пизанец
|
||||||
пизанка
|
пизанка
|
||||||
пизда
|
|
||||||
пиздец
|
|
||||||
пиздобол
|
|
||||||
пизолит
|
пизолит
|
||||||
пиит
|
пиит
|
||||||
пиитика
|
пиитика
|
||||||
@@ -77659,8 +77650,6 @@
|
|||||||
худфильм
|
худфильм
|
||||||
худфонд
|
худфонд
|
||||||
худышка
|
худышка
|
||||||
хуй
|
|
||||||
хуйня
|
|
||||||
хук
|
хук
|
||||||
хула
|
хула
|
||||||
хулахуп
|
хулахуп
|
||||||
|
|||||||
+5
-3
@@ -33,7 +33,7 @@ process's memory (dump it with `--dump`, query it with `--trace WORD`).
|
|||||||
| `orfo_dict_2025.txt` | ✓ | the pdftotext output — the parsed source of truth (the PDF binary is not needed to rebuild). |
|
| `orfo_dict_2025.txt` | ✓ | the pdftotext output — the parsed source of truth (the PDF binary is not needed to rebuild). |
|
||||||
| `all.txt` | ✓ | Stage 1 base: every clean Cyrillic headword/variant; a plural headword with a singular is replaced by that singular. |
|
| `all.txt` | ✓ | Stage 1 base: every clean Cyrillic headword/variant; a plural headword with a singular is replaced by that singular. |
|
||||||
| `manual_confirm.txt` | ✓ | hand-reviewed nouns from the undefined tail; the brain merges them into the result. |
|
| `manual_confirm.txt` | ✓ | hand-reviewed nouns from the undefined tail; the brain merges them into the result. |
|
||||||
| `manual_reject.txt` | ✓ | hand-vetoed false nouns (substantivized adjectives a dictionary misreads as nouns, e.g. нёбный); subtracted from the result last. |
|
| `manual_reject.txt` | ✓ | hand-vetoed words subtracted from the result last: false nouns (substantivized adjectives a dictionary misreads as nouns, e.g. нёбный) and obscene lexicon (mat, e.g. хуй, блядь). |
|
||||||
| `scrabble.txt` | ✓ | **Stage 2 result**: common nouns, nominative singular (+ pluralia tantum), length 2–15 — the working dictionary. |
|
| `scrabble.txt` | ✓ | **Stage 2 result**: common nouns, nominative singular (+ pluralia tantum), length 2–15 — the working dictionary. |
|
||||||
| `undefined.txt` | — | the ambiguous tail; kept in memory, written only with `--dump`. |
|
| `undefined.txt` | — | the ambiguous tail; kept in memory, written only with `--dump`. |
|
||||||
|
|
||||||
@@ -134,8 +134,10 @@ Each Stage-1 word (length 2–15) is routed by three sources, most authoritative
|
|||||||
The plural-form variants the dictionaries already resolve never reach this step.
|
The plural-form variants the dictionaries already resolve never reach this step.
|
||||||
5. **Manual overrides**: `manual_confirm.txt` adds maintainer-approved nouns from the
|
5. **Manual overrides**: `manual_confirm.txt` adds maintainer-approved nouns from the
|
||||||
undefined tail (before variant rescue, so they can anchor it); `manual_reject.txt` is
|
undefined tail (before variant rescue, so they can anchor it); `manual_reject.txt` is
|
||||||
subtracted **last**, removing false nouns a dictionary misreads — substantivized
|
subtracted **last**, removing both false nouns a dictionary misreads — substantivized
|
||||||
adjectives with no nominal use (`нёбный`, `акцизный`, …) — overriding every path above.
|
adjectives with no nominal use (`нёбный`, `акцизный`, …) — and the obscene lexicon (mat
|
||||||
|
on the хуй/еб·ёб/пизд/бляд roots: `хуй`, `пизда`, `блядь`, …), dropped as policy though
|
||||||
|
morphologically valid nouns — overriding every path above.
|
||||||
|
|
||||||
The nominative singular always comes from the dictionary that recognised the word, or from
|
The nominative singular always comes from the dictionary that recognised the word, or from
|
||||||
the orthographic `ед.` note — never from a predictor guess (libmorph and the predictor
|
the orthographic `ед.` note — never from a predictor guess (libmorph and the predictor
|
||||||
|
|||||||
Reference in New Issue
Block a user