Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

eyo-kernel

e2yo28.2kMIT2.5.6

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

e, yo, yoficator, ё, е, ёфикатор, ёфикация

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

changelog

Changelog

v2.5.6

В небезопасный словарь перенесены слова #22, #26:

  • протёкший;
  • покошён;
  • замёт;
  • киём;
  • клешнёй;
  • зуёв;
  • пересёкший;
  • шрёдер.

v2.5.5

В небезопасный словарь перенесены слова #21, #25:

  • лёвкой;
  • стёжками;
  • Приозёрск;
  • Лёшек;
  • Пётр.

v2.5.4

В безопасный словарь добавлены новые слова #18 @dima74.

<summary>Список слов</summary>
  • авианалёт
  • авиаперелёт
  • ампуломёт
  • ампуломётный
  • ампуломётчик
  • атомолёт
  • аудиомонтажёр
  • бронестёкла
  • видеоотчёт
  • внелёгочный
  • высоколётный
  • георешётка
  • гиперобъём
  • гиротренажёр
  • двухрублёвик
  • дзёдо
  • домовёнок
  • киномонтажёр
  • конечнопорождённая
  • кёрлингистка
  • ледоём
  • лопастепёрый
  • лёвендальдер
  • лёгтинг
  • малонаселён
  • манъёгана
  • межзёренный
  • мервейёзы
  • многопролётный
  • многопёровые
  • мэнкё
  • невключённый
  • недоведённость
  • нежёсткий
  • незакалённый
  • ненапряжённый
  • ненаселённый
  • неоплодотворённый
  • неотъёмный
  • несопряжённый
  • нетяжёлый
  • неуточнённый
  • неучёт
  • нингё
  • нэнмён
  • обёрточек
  • олёт
  • оммёдзи
  • оммёдо
  • онрё
  • онъёми
  • опушённость
  • отнесённость
  • полувечнозелёный
  • помехозащищённый
  • порноактёр
  • порнорежиссёр
  • пошёрстный
  • противошёрстный
  • псевдотрёхмерность
  • ракетомёт
  • ребёфинг
  • рёберный
  • рёмин
  • рёшти
  • самолётоподъёмник
  • санбёрст
  • светлопёр
  • свёрточный
  • серёжчатый
  • слабозаселённый
  • соёмбо
  • стреломёт
  • субзвёздный
  • суперлёгкий
  • суперпартнёр
  • суперприём
  • сэссё
  • сёги
  • сёгибан
  • сёгист
  • сёдзи
  • сёдзё
  • сёнэн
  • сёрдж
  • сётакон
  • телеактёр
  • телережиссёр
  • токосъём
  • топосъёмка
  • трёхбуквенный
  • трёхгорье
  • фотокиноплёнка
  • хёрлинг
  • цветоделённый
  • четырёхбуквенный
  • четырёхмачтовый
  • четырёхствольный
  • шассёр
  • шассёрский
  • шипощёк
  • шуруповёрт
  • экранолёт
  • эурямёйсет
  • юдзё
  • ёйги
  • ёкодзуна

v2.5.3

Слово «звёздчатый» добавлено в небезопасный словарь.

v2.5.2

Обновлены зависимости в package.json.

v2.5.1

Слово «лён» перенесено в небезопасный словарь.

v2.5.0

  • Поддержка комментариев в словарях.
  • Возможность указать для слова только строчное использование.
  • Исправлены ошибки из hcodes/eyo#24

v2.4.0

Поддержка словарей сжатых с помощью gzip (*.txt.gz) #8.

v2.3.1

  • Мелкие правки.

v2.3.0

  • Доработки для использования в клиентских скриптах.

v2.2.1

  • Добавлено слово «чётномерная» в безопасный словарь.
  • Обновлены dev-зависимости в package.json.

v2.2.0

Метод lint стал возвращать поле index — позицию символа в строке.

v2.1.0

  • Сжатый формат словарей. Теперь безопасный словарь, сжатый GZIP, занимает менее 100 КБ.
  • Добавлена возможность передачи массива строк в метод .dictionary.set().

v2.0.3

Добавлена папка dict в npm-пакет.

v2.0.2

Исправлена ошибка в методе .dictionary.load().

v2.0.1

Правки в README.md.

v2.0.0

API v2 не совместимо с v1.

  • В API появилась возможность создавать и изменять собственные словари.
  • Удалена поддержка старых версий Node.js.
  • Уменьшен размер и формат встроенных словарей.

v1.0.7

Исправлена ошибка в расстановке буквы «ё» в двухбуквенных словах. @nickkolok #4

v1.0.6

Исправлена ошибка в расстановке буквы «ё» в словах, в конце предложения, перед переносом строки.

v1.0.5

Слова «приближён*» перенесены в небезопасный словарь.

v1.0.4

Исправлена ошибка в регулярном выражении при выделении слов.

v1.0.0