eyo-kernel

Restoring the letter «ё» (yo) in russian texts

Usage no npm install needed!

<script type="module">
  import eyoKernel from 'https://cdn.skypack.dev/eyo-kernel';
</script>

README

Восстановление буквы «ё» в русских текстах

NPM version NPM downloads Build Status Build Status Coverage Status Dependency Status

Особенности

  • проверка и восстановление буквы «ё» в русских текстах, вместо написанной «е»;
  • замена «е» на «ё» только в бесспорных случаях;
  • исправление в словах нескольких букв «е», «ё»;
  • корректная обработка сокращений («мед. училище», но не «мёд. училище»);
  • аббревиатуры не обрабатываются.

Установка

npm install eyo-kernel

Зависимости

Отсутствуют.

Использование

const Eyo = require('eyo-kernel');
const text = 'Мой текст...';

// Работа с безопасным встроенным словарём.
const safeEyo = new Eyo();
safeEyo.dictionary.loadSafeSync(); // ./dict/safe.txt.gz
console.log(safeEyo.restore(text));
console.log(safeEyo.lint(text));

// Работа с небезопасным встроенным словарём.
const notSafeEyo = new Eyo();
notSafeEyo.dictionary.loadNotSafeSync(); // ./dict/not_safe.txt.gz
console.log(notSafeEyo.restore(text));
console.log(notSafeEyo.lint(text));

// Загрузка собственного словаря.
const eyo = new Eyo();
// Также поддерживаются словари, сжатые с помощью gzip, *.txt.gz
eyo.dictionary.loadSync('./my_eyo_dict.txt');
console.log(eyo.restore(text));
console.log(eyo.lint(text));

// Создание собственного словаря.
const eyo = new Eyo();
// Добавить слово в свой словарь.
eyo.dictionary.addWord('словоСБуквойЁ');
// Удалить слово из словаря.
eyo.dictionary.removeWord('словоСБуквойЁ');
// Очистить словарь.
eyo.dictionary.clear();

Словарь

Первоначально словарь взят из проекта php-yoficator. По доработкам словаря см. CHANGELOG.md.

Формат словаря

Это текстовый файл с кодировкой UTF-8, каждое слово на отдельной строке.
Слова в словаре чувствительны к регистру букв. Слова, начинающиеся со строчной буквы, заменят в тексте слова со строчной и заглавной букв (Еж → Ёж и еж → ёж).
А слова, начинающиеся с заглавной буквы, заменят в тексте слова только с заглавной буквы (Еж → Ёж). Для комментариев используйте символ #.

Консольная утилита

Eyo в Yaspeller

В yaspeller добавлена поддержка eyo.
Используйте опцию --check-yo в командной строке yaspeller -l ru --check-yo my_file.txt или параметр checkYo: true в конфигурационном файле.

Ссылки

Лицензия

MIT License