Известный Читатель. Читалка И Словари



Введение Всем привет! Годы идут, а мы по-прежнему пишем читалку со словарями.

Пришло время очередной статьи о том, что у нас нового.

Для лучшего погружения в контекст советую прочитать две предыдущие статьи или хотя бы последнюю:

  • Как выучить Android за 3 года, или история одного приложения
  • Изучение иностранных языков с помощью программ чтения
Известный Читатель - Это читалка со словарями.

Ни для кого не секрет, что наш основной «книжный» движок от знаменитого CoolReader. Этот движок существует с 2000 года, переживал затишье, затем всплеск (примерно 2020-2021 годы) и сейчас развивается в основном в составе читалки.

КОчитатель ).

А вот словарная часть и практически полностью переработанный (андроидный) интерфейс - наши.

Напомню базовую «парадигму» использования словарей в читалках: выделить (в книге) слово или фразу:

Известный Читатель.
</p><p>
 Читалка и словари

Выделенное слово/фраза переведите выделение:

Известный Читатель.
</p><p>
 Читалка и словари

Перевод выделенного слова Но так не должно быть, подумали мы и сделали кнопку вызова диалога словаря прямо с главного экрана, откуда вас переводят в «агрегатор словарей»:

Известный Читатель.
</p><p>
 Читалка и словари

Агрегатор словарей Что вы можете сделать здесь? Вот что: вводим язык «от» и язык «на» (можно сохранить в настройках «быстрые языковые пары»), вводим слово и выбираем в какой словарь будем переводить.

Некоторые программы (например, Википедия) также могут отправлять «намерение перевода» в словарную программу.

Мы тоже можем это сделать:

Известный Читатель.
</p><p>
 Читалка и словари

Перевод из сторонних программ Если вернуться к словарям, то с момента последней публикации произошло много изменений.

Оставлю самое интересное напоследок.

Давай начнем.



Словарные классификации

У нас много словарей, вы можете перевести в любом из них.

Чтобы было проще ориентироваться, расскажу, как я классифицирую словари:

  • Первая «глобальная» подклассификация словарей: В сети И не в сети словари.

    Из контекста понятно, что некоторые люди могут работать только с Интернетом, а другие могут обходиться без него.

    Но механика другая;

  • Вторая «глобальная» подклассификация: умение переводить слова/устоявшиеся фразы или произвольный текст;
  • Третья и основная классификация основана на методе интегрирования:
    • Словари приложений;
    • Онлайн-словари без API;
    • Онлайн-словари с API;
    • Встроенные (оффлайн) словари.



Словарные приложения

Суть здесь в следующем: читалка отправляет текст во внешнюю программу, а дальше она все делает. Есть как онлайн, так и оффлайн.

Плюсы:

  • Простое взаимодействие;
  • Стабильность работы.

Минусы:
  • Все внешние программы имеют свой интерфейс, свои нюансы, что не всегда удобно;
  • Нет возможности руководить личный словарь (здесь есть один нюанс – внизу);
  • Если мы тоже находимся в этом же режиме (а это часто бывает), то возможны ненужные перерисовки экрана.

Давайте просмотрим эти словари:
  1. GoldenDict — старый, хороший, функциональный.

    Платно (но есть обходные пути), переводит слова, офлайн.

    Есть «модернизирующие» моды, есть наш мод .

    Он может многое, даже морфологию, если вы его настроите.

    Он очень давно не обновлялся, исходников нет. Но он хотя бы работает;

  2. Aard2 - бесплатно, переводит слова, оффлайн.

    Простой и в то же время хороший словарь со своим очень эффективным форматом.

    неряха , который легко справляется с огромными словарями.

    В качестве словарей можно скачать полные дампы Википедии (на разных языках, регулярно обновляются).

    И вот у нас есть новости.

    Во-первых, у программы есть исходники.

    Во-вторых, мы его немного улучшили: немного улучшили «связность» интерфейса, добавили второй тип поиска и, самое главное, научили отправлять текст перевода обратно в КР, тем самым обеспечив работу личного словаря — тот же нюанс из пункта выше.

    Вы можете взять модифицированную для нас версию aard2 в нашей теме .

    Пиар в основном репозитории выдан.

    Мы очень надеемся, что автор захочет включить его в будущие версии.

    Недостатки — не очень вписывается в интерфейс eink, мало словарей (по сути, есть только Википедия).

    Но! Я нашел замечательную программу в Интернете PyГлоссарий , который может (и делает это хорошо) конвертировать словари из/в различные форматы, включая неряха .

    Работает как на Windows, так и на Linux. Конечно, конвертация — это дополнительный шаг, но он делается только один раз;

  3. Abbyy Lingvo - переводит слова, оффлайн.

    Хорошо, платно, словари тоже платные;

  4. Переводчики Яндекс/Гугл - бесплатно, онлайн (можно, по-моему, заранее скачать словари для офлайна), переводят текст. Кстати, очень качественный;
  5. Reverso Context - один из читателей очень похвалил.

    Ну, на самом деле это хорошо;

  6. И много других разных, которые мы больше описывать не будем (например, Mdict, с преимущественно китайскими словарями и т.п.

    ).

    Если вы знаете интересные и хорошие, будем рады прочитать о них в комментариях к статье (также можно написать в личном сообщении, а также на Форум ).



Известный Читатель.
</p><p>
 Читалка и словари

Aard2 и кнопка «вернуть текст перевода обратно в КР» В КР в списке словарей приложения есть ряд старых, которых может уже давно нет в живых (мы не проверяли).

Позже мы планируем здесь немного навести порядок, чтобы в список попадали только актуальные.

Небольшое, но важное замечание — помимо ряда «преднастроенных» словарных приложений, КР может использовать в качестве словаря любое приложение, способное принимать текст.

Онлайн-словари без API

Идея здесь проста — мы отправляем текст на перевод на «веб-страницу» словаря, он нам выдаёт html, который мы должны разобрать и показать пользователю перевод и сопутствующие артефакты (примеры и т.п.

).

Минусы очевидны – если изменить формат (структуру) веб-страницы, то все сломается.

Есть и плюсы – это бесплатно.

Здесь нам нужно немного рассказать о том, как настроить направление перевода, поскольку в онлайн-словарях это необходимо.

Мы связываем языковую пару «язык с» и «язык на» с книгой, т. е.

вы должны указать это один раз для каждой книги.

Для удобства вы можете указать в настройках часто используемые пары, чтобы потом быстро выбирать их.



Известный Читатель.
</p><p>
 Читалка и словари

Выбор языковой пары для книги Указать языковую пару для книги можно в нескольких местах – настройках, панели выбора, редактировании информации о книге, а также непосредственно перед первым переводом.

В эту категорию входят:

  1. Linguee - очень качественный, красивый, хороший.

    Дает хорошую структуру словарной карточки (перевод, примеры).

    Немного жадный – если переводить часто, он начинает капризничать и перестает давать перевод;

  2. Glosbe — абсолютно мощный проект: куча языков (более 6000, включая самые редкие), карта еще и со структурой;
  3. Dict.cc тоже неплох.

    Мы представляем здесь по советам читателей (мы ценим вас);

  4. Туренг - для изучения турецкого языка (тоже по просьбе читателя).

    Но однажды во время поездки в Турцию я сам им воспользовался;

  5. Грамота.

    ру чисто «для развлечения», но пусть будет так;

  6. Городской дикт — этот, наверное, больше подходит для современных текстов, чем для книг.

    Это как народный толковый словарь, но любопытно.

    Попробуйте, например, перевести на него «ковидиот».



Известный Читатель.
</p><p>
 Читалка и словари

Перевод на Глосбе

Известный Читатель.
</p><p>
 Читалка и словари

Грамота.

ру

Известный Читатель.
</p><p>
 Читалка и словари

Городской диктат

Известный Читатель.
</p><p>
 Читалка и словари

Лингее

Онлайн-словари с API

Здесь все становится серьезнее.

Взаимодействие через API гораздо стабильнее, но не лишено недостатков.

Давайте посмотрим на это:

  1. Abbyy Lingvo переводит слова.

    Оно так же хорошо, как и приложение (есть даже файлы транскрипции и аудиопроизношения, которые мы пока не добавили), но есть существенные недостатки — для нормальной работы нужно зарегистрировать «своё» приложение и получить токен.

    Токен сохраняется в настройках КР и используется.

    Существует квота на количество переводов.

    Этот доступ, насколько я понимаю, называется «тестовым» доступом (то есть его можно закрыть в любой момент, но долгое время все очень стабильно);

  2. Яндекс переводчик переводит тексты.

    Здесь с переводами все хорошо, но, во-первых, это платно, а, во-вторых, процедура регистрации еще сложнее - нужно зарегистрироваться в облаке Яндекса, ввести туда данные своей карты, получить токен и т. д. Мы описал все это - попробуй это.

    Одним из преимуществ является отсутствие абонентской платы, это относительно дешево.

    На заре формирования этого облака мне позвонил вежливый Яндекс и поинтересовался моими впечатлениями.

    Я пытался объяснить, что было бы неплохо сделать упрощенную систему регистрации для таких случаев (когда перевод осуществляется в ридере, но читатель сам хочет за него платить), но они честно признались, что такого нет. .

    Вообще в облаке Яндекса есть много интересного, например, качественная озвучка текста.

    И одно время мы даже думали приделать его к движку чтения книг, но ценник там, на мой взгляд, не гуманный - я подсчитал (хотя уже забыл), что озвучка Сервантеса "Дон Кихота" будет стоить либо 400, либо 1000 руб.

    Подозреваю, что Яндекс реализует (или уже?) эту функцию в своей читалке;

  3. Google. Ну и где бы мы были без него? Все примерно так же, как в Яндексе, но дороже и с абонентской платой.

    Поэтому мы не пошли по этому пути.

    Однако мы обнаружили какую-то лазейку, позволяющую переводить бесплатно (замечено на KOReader).

    Не знаю, насколько это официально, но это работает;

  4. Deepl.com — интересный игрок, раньше я о нем не знал.

    От тех же ребят, которые делают лингве, но это для перевода текстов.

    Заявляют очень качественный перевод, но больших отличий от Яндекса я не увидел.

    Может я плохо выгляжу? Доступ есть как платный, так и бесплатный, но необходимо указывать карту, а не российскую.

    Санкции не имеют к этому никакого отношения; у них сразу не было России в списке стран, хотя язык поддерживается.

    Как вариант, попросите зарегистрироваться своих друзей, живущих в Европе.



Известный Читатель.
</p><p>
 Читалка и словари



Известный Читатель.
</p><p>
 Читалка и словари



Известный Читатель.
</p><p>
 Читалка и словари

Небольшое примечание.

Идея, которая пришла в голову во время путешествия на «ласточке» из Адлера в Анапу (интернет там был достаточно нестабильным, и только на вокзалах, поэтому вызвать онлайн-словари половину времени не представлялось возможным, а смотреть на ошибку сетевого подключения стало немного скучновато) - настройка соответствия между оффлайн и онлайн словарями.

Теперь можно перевести, например, в Яндекс онлайн, а когда нет Интернета - скажем, в GoldenDict, причем без дополнительной перенастройки, это абсолютно прозрачно.



Оффлайн словари

Вот мы и добрались до самого интересного и нового.

Интернет, онлайн — это хорошо.

Но это не совсем надежно и работает не везде.

Между тем в Интернете можно найти большое разнообразие словарей.

Популярные форматы: StarDict и Lingvo DSL. Мы поддерживаем оба (в кодировке utf8).

То, что должно быть сделано:

  1. Сохраняем словари в папку диски папки приложений (KnownReader).

    Словарь, как правило, состоит из нескольких файлов, поэтому размещается «в своей подпапке»;

  2. Заходим в настройки «Словари/оффлайн словари», а там:
    1. Ставим галочку, чтобы использовать этот словарь, сортируем словари так, как нам хочется;
    2. Нажмите «конвертировать» для каждого словаря, дождитесь конвертации (это разовая операция);
    3. Вы можете использовать его.



Известный Читатель.
</p><p>
 Читалка и словари

Настройки автономного словаря Перевод в автономном словаре выглядит примерно так:

Известный Читатель.
</p><p>
 Читалка и словари



Оникс Букс

Поговорим немного об Onyx Boox. Дело в том, что адаптация ридера к устройствам Onyx — для нас приоритетная задача.

Оникс имеет встроенное приложение для словарей .

И, что самое интересное, у него есть API, и к нему можно подключиться, что мы и сделали.

Он работает так же, как «обычный» онлайн-словарь.

В будущем - (вероятно) сделаем и отображение в виде html. Кстати, мы адаптировали ридер под современные читалки Onyx, в том числе и цветные, которые были представлены совсем недавно (Onyx Boox Poke, Nova (Air(C)) и другие): https://onyx-boox.ru/boox_novaairc , а также не забывайте про более «классические модели» (например на Android 4, такие как Livingstone).

В любом случае, если у вас есть читалка Onyx и есть вопросы по использованию читалки на ней, обращайтесь напрямую к нам.



OPDS (Открытая система распространения публикаций)

Напоследок поговорим немного не о словарях, а об онлайн-каталогах книг (ОПД).

Мне захотелось (в академических целях) поднять сетевой каталог книг внутри сети моего домашнего роутера (таким образом, разделив его на всю семью, а если есть открытые пробрасываемые порты, то и за ее пределами).

Тем более, что в Интернете сравнительно легко найти дампы сетевых библиотек: травма, флиб и т.п.

Ну вы поняли.

Решение следующее:

  1. Была найдена программа freelib ( https://github.com/petrovvlad/freeLib , автор Влад Петров);
  2. КР доработан с учетом некоторых нюансов программы;
  3. Freelib может предоставить библиотеку в виде каталога opds, но для запуска программы, к сожалению, нужна графика (мы говорим о Linux).

    Однако после обращения к автору проблема была решена — он согласился ее доработать, и программа научилась запускаться в консоли;

  4. Дальше дело техники — используем одну плату (OrangePI, RaspberryPI) и внешний (USB) жесткий диск для нее;
  5. Запускаем, все работает (кто хочет, но не может настроить, приходите).



Заключение

К сожалению, к выводу мы не пришли – не успели.

Как того требует традиция (раз вы уже дочитали), то по законам жанра кот Николай здоровается со всеми.



Известный Читатель.
</p><p>
 Читалка и словари

Продолжаем работать – 148 открытых заявок, 430 закрытых.

Оставайтесь с нами, приходите к нам ;) Теги: #Android #Разработка Android #Разработка мобильных приложений #с открытым исходным кодом #I PR #KnownReader #FOSS #CoolReader

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.