Shoorick (shoorick) wrote,
Shoorick
shoorick

Category:

Склоняем точнее

Мы стали более лучше одеваться^W^W^W правильнее склонять имена с фамилиями. Вчера вышла свежая версия предназначенного для этого перлового модуля Lingua::RU::Inflect (он же есть и на гитхабе — чуть свеже́е, чем на CPAN).

Фрагмент документации модуля Lingua::RU::Inflect

На днях по рабочей необходимости сгенерировал родительный падеж более, чем на четырёх тысячах реальных имён — почти один процент из них оказался с ошибками — пришлось исправить модуль, за который я четыре года не брался.

Итак, в новой версии:

  • Закрыты все имевшиеся по состоянию на вчерашний день issues, в том числе

  • Исправлена проблема с экспортом всего возможного оператором use Lingua::RU::Inflect ':all' — компилятор теперь не ругается на попытку экспортировать функции, убранные в другой модуль.

  • Имена с беглыми гласными (Лев, Павел) и некоторые фамилии на -ец (Песец, Писец и Отец) стали склоняться правильно — беглая гласная убегает, как ей и положено. Там, где убегать не положено (Швец, Жнец, Надудеигрец и полный крах, крушение всех надежд — шесть букв, вторая И, но не фиаско) — не убегает.

  • Женские фамилии, оканчивающиеся на -ов, -ёв, -ин, -ий, -ый — похожие на мужские, но всё-таки женские — перестали склоняться.

  • Мужские фамилии, оканчивающиеся на -их и -ых, могут всё-таки склоняться: например, Бултых, Жмых, Отдых, Дитрих, Рерих, Ульрих, Фрейндлих и Эрлих склоняются, а Синих, Серых, Карих, Чёрных — нет.

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


В итоге количество ошибок на тестовом наборе данных сократилось в 2–3 раза, до одной ошибки на 200–300 человек — есть неочевидные случаи, потому и оценка приблизительна. Двойные имена и фамилии пока слоняются неправильно — исправлю как-нибудь потом.

http://shoorick.ru/2018/10/05/inflect-006/
Tags: perl, имя, русский язык
Subscribe

Posts from This Journal “perl” Tag

  • Цветной Subversion

    Git умеет «из коробки» раскрашивать то, что выводит в консоль, а Subversion — нет. Надоело руками каждый раз перенаправлять вывод svn diff в…

  • Тестирование в моджо — только через прув

    Из перлового веб-фреймворка Mojolicious начиная с вышедшей ровно четыре месяца назад версии 8.0 убрана команда test Теперь вместо этой…

  • Правильный тип для офисных файлов

    Перловый микрофреймворк Mojolicious::Lite умеет сам выдавать существующие файлы, но при этом не все из них получают верный тип содержимого…

  • Надо ругаться в боевом режиме

    В состав перлового микрофреймворка Mojolicious::Lite входит класс Mojo::Log, который не просто пишет сообщения в лог, а ещё и учитывает важность…

  • Вместо себя

    Есть ненулевая вероятность того, что приближающийся 2019 год будет для моей семьи не таким, как сейчас и я в силу разных причин не смогу быть там,…

  • Больше перловой документации!

    Документация по языку Perl и его модулям теперь доступна и на  perldoc.pl, только оно без прокси не работает, ибо заблокировано роскомпозором.…

  • Инструменты разные — методы похожие

    Попробовал решить одну из рабочих задач, применив нелюбимый язык PHP в комплекте с современными инструментами — получилось близко к тому, что делал…

  • Почти что Перл с Апачем

    Новости географии: в одном люксембургском углу находится никому не известная деревня Шенген, ближайшая к ней железнодорожная платформа, буквально на…

  • Дорогой язык

    Вышел отчёт по собранным Мойкругом зарплатам на середину 2018 года — https://vc.ru/flood/43849-zarplaty-it-specialistov-na-seredinu-2018-goda В…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment