AlReaderX | Функциональная программа для чтения



Реп: (3411)
AlReaderX
Версия: 1.17

Последнее обновление программы в шапке: 29.05.2024

Прикрепленное изображение

Скриншоты
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение


Русский интерфейс: Да.
Разработчик: Neverland
Лицензия: Free for home use.
Домашняя страница: http://alreader.com
Google Play: AlreaderExt. Обновления нерегулярны!
Целевое использование: Чтение текстовых форматов с возможностью правки опечаток в FB2, HTML и TXT. (Полный список форматов см. в "Описании").
Описание: AlReaderX - это новая версия известной читалки AlReader для Android и Windows (Win32). AlReaderX так же адаптирован к устройствам Onyx с E-Ink. Во многих устройствах он даже внедрён в прошивку. См. "Описание вариантов программы".
Стадия разработки: Бета версия. Тестирование. Отладка.
  • Прежде чем заявлять о проблеме, нужно убедиться, что она присутствует в самой свежей сборке!
  • Если свежая сборка ведёт себя не так, как ожидалось, то нужно выложить багрепорт!
  • Ознакомьтесь с содержимым спойлеров, помеченных "Читать прежде, чем писать / качать!"
Системные требования: Android 5+ (иногда 4.0.3+); Win32 - Windows XP, Linux (wine) (см. Примечания).
  • Примечания
    • Обычно выходят сборки для Android 5+ (API 21). с ними - полная функциональность программы.
    • Сборки с поддержкой Android 4.0.3+ (API 15 -16) выходят нерегулярно.
      В них отсутствуют Скины, "Цвет кнопок/иконок", смена кнопок, меньше количество тем и т.д. и т.п.
    • На Android [4.0.3 - 4.4.4] (API 15 - 20) в режиме TTS нет управления кнопками гарнитуры и уведомлений на экране блокировки и в шторке.
    • Win32 версия - Разработка заморожена. См. в "Описании".
Топик этой ветки. Основное соглашение.
  • Эта ветка посвящена прежде всего тестированию и поиску багов, а так же обсуждению различных аспектов, призванных улучшить качество продукта.
  • Программа активно разрабатывается, но ещё далека от релиза. Не всё запланированное уже реализовано.
  • Приветствуются предложения по расширению функционала. Но окончательное решение в любом случае принимает автор программы Alan.
  • Вопрос: "Когда?" - является Оффтопиком, признаком дурного тона и неуважения к труду разработчика! Пара слов от разработчика
  • Обратите внимание на рекомендации по оценке постов.

Основное соглашение моего сотрудничества с бетатестерами (от разработчика).

  1. Если Вас не устраивает хоть что-либо в данном соглашение, то Вы с чистой совестью можете оставить сообщения о найденных Вами багах при себе вместе с замечаниями как что и когда мне надо сделать.
  2. Программа разрабатывается согласно моим представлениям о том, как она должна выглядеть и функционировать. Степень, в которой я прислушиваюсь к Вашим советам и пожеланиям, зависит от каждой конкретной ситуации и не является величиной постоянной во времени.
  3. На мой взгляд главная отдача, которую получает бета-тестер, это возможность повлиять на мои решения в пользу более удобной тестеру функциональности и убыстрение получения конечного продукта. Надежды на любой другой результат Вашего личного тестирования продукта - тщетны. Я не буду никого "холить и лелеять" за то, что он во время использования данного продукта не поленился отправить мне баг-репорт или скинуть мне проблемный файлик на почту. Я просто скажу спасибо и постараюсь исправить баги. 100% прочту Ваши пожелания. Все остальное - не гарантировано и не подразумевается.
  4. Любые фразы о необходимости принять именно такое решение, аргументированные коммерческой пользой - не учитываются. Коммерческая продажа данного продукта не касается пользователей. Никак. Если у Вас вопрос, который, как Вам кажется, не попадает под данное условие и все же, на Ваш взгляд, имеет практическую ценность - есть приватные сообщения. Они именно для этого и сделаны.
  5. Учтите, что любое Ваше нововведение я скорее всего встречу очень настороженно. Причина проста - я не хочу превращения данной программы в монстра, который делает все на свете и иногда позволяет читать книги. Я хочу сделать программу, оснащенную только самыми необходимыми и полезными функциями для чтения книг. Степень полезности и необходимости, в конечном итоге оцениваю я и только я. Вы лишь можете высказать свое мнение, которое я гарантированно прочту.
  6. Пункт несколько дублирующий предыдущие, кумулятивный:
    1. Я никому ничего не должен. Не был должен. И не буду должен.
    2. Я не считаю, что мне кто-то что-то должен. (сказать "спасибо" вслух, т.е. на форуме, если Вам что-либо понравилось в какой-то конкретной реализации или вообще, я не считаю обязанностью, это просто вежливость.)
  7. Данная программа делается ради моего развлечения, не больше. Поэтому участвуйте в обсуждении только тогда и пока Вам это интересно, не больше и не дольше. Вас сюда насильно никто не тянет, не взваливайте на себя непосильную ношу.

Спасибо за возможное/реальное участие в тестировании.


Описание. Читать прежде, чем писать в теме!

Руководство пользователя AlReaderX для Onyx Boox:
Скачать тут

Примечания!
  • Программа находится в процессе разработки. Поэтому не все заявленные ниже фичи уже реализованы:
    ** - реализовано частично.
  • В списке ниже показано состояние разработки для Android.
  • Разработка под Android является приоритетной.
  • Разработка Win32 версии "ЗАМОРОЖЕНА" в сентябре 2019 года до выхода Android версии из стадии "Бэты"!
  • Win32 и Android версии будут иметь одинаковый функционал (с учётом особенностей платформ).

Возможности программы:
  • Совместимость с Android 4.0.3+, Windows XP+ (Linux из под wine)
  • Поддержка устройств Onyx Boox с E-Ink. Просьба проверить!
  • Форматы fb2, fb3, fbz, txt, html, xml, rtf, odt, doc, docx, epub (без DRM), mobi, prc (PalmDoc), pdb, azw, azw3, cbr, cbz, acbf, maff, rst, md.
  • Открытие файлов, запакованных в ZIP или RAR архивы.
  • Поддержка просмотра таблиц в FB2, MOBI, EPUB и DOCX.
  • Тонкая настройка стилей отображения книги через CSS (кроме docx и odt).
  • Редактирование форматов FB2, HTML и TXT.
  • Поддержка сетевых библиотек по протоколу OPDS.
  • Озвучивание текста TTS.
    Примечание:
    • Всё работает на Android 5+. На более ранних версиях Android нет управления кнопками гарнитуры и уведомлений на экране блокировки и в шторке.
  • Работа со словарями. (Поддерживаются: GoldenDict, ColorDict, Dictan, Aard 2, Lingvo, HedgeDict и Fora Dictionary, возможно так же FreeDictionary, Quick/Onyx Dictionary.)
  • Два цветовых профиля День-Ночь
  • Одно- и двухстраничный режим с возможностью автоматического переключения.
  • Красивая анимация листания.
    Примечание:
    • не поддерживается на устройствах с E-Ink экранами (Ebooks) c Android < 9.
  • Настройка элементов строки состояния и колонтитула для оконного и полноэкранного режимов.
  • Поддержка отображения сносок на странице и в виде всплывающего окошка.
  • Горизонтальное и вертикальное выравнивание текста на экране.
  • «Висячая» пунктуация.
  • Секции с новой страницы.
  • Переходы по тексту – проценты, страницы.
  • Содержание.
  • Фиксация поворота экрана.
  • Поддержка скинов с выбором одно- и двухстраничного вариантов.
    Примечания:
    • Доступна на Android 4.2+
    • Не поддерживается на устройствах с E-Ink экранами (Ebooks).
  • Создание ярлыков для книги на домашнем экране.
  • Возможность удержания подсветки экрана.
  • Правильные переносы для 20-и языков.
  • Фоновые часы под текстом.
  • Экспорт-импорт настроек. Инструкция
  • 9 тап-зон для коротких и длинных тапов , жесты, жесты двумя пальцами, изменение размера текста двухпальцевым щипком, назначение действий на кнопки. (список команд может дополняться/изменяться по мере реализации функций.)
  • Мультиязычный интерфейс. (На данный момент: русский, английский, немецкий, белорусский и турецкий)
  • Синхронизация позиции чтения Android <-> Android, Android <-> Windows и Windows <-> Windows. ** (реализовано Android <-> Android)

Настройки, TTS, CSS, Скины, и т.п.
Видеообзоры: Настройки:Шрифты и Стили CSS:Скины:TTS:Другое:

C FAQ. Советы. Читать прежде, чем писать в теме!

Внимание!
  • Огромная просьба ко всем - при любом запросе (если речь о добавлении функционала) сразу добавляйте зачем, собственно, это надо.
  • Все сборки, начиная с DEBUG 2302031 содержат исправленный Default скин.
    Но, обновлять его (т.е. заменить файлы в папке Skins) нужно "ручками".
    Естественно, при установке сборок 2302031(и новее) "с нуля", этого делать не нужно.
    Скачать исправленный скин можно тут.

Советы
  • В диалогах (окнах) "Поиск" и "Содержание" долгий тап (лонгтап) на любой строке результата поиска / на пункте содержания делает диалог полупрозрачным.
  • В меню: Тап по кнопке Выхода - "сворачивает" программу, а лонгтап по ней - полностью выгружает программу из памяти.
  • Чтобы отредактировать файл alrext.ini или файл *.css во встроенном редакторе, нужно открыть окно "Настроек" и 5 раз тапнуть по середине нижней панели (там, где номер версии). В открывшемся диалоге выбрать нужный файл. После подтверждения изменений программа автоматически закроется.
  • Алгоритм поиска в локальной библиотеке.


FAQ:
  1. Как открыть книгу на Windows? Открыл программу - белый экран, ничего не работает.
    Книги пока открываются только через сторонний файл-менеджер типа Total Commander или Проводник (Explorer) перетаскиванием (Drag&Drop) файла в окно AlReaderX.
  2. Как вызвать "Меню", если переназначить "дефолтный" вызов тапом по центру экрана?
    Существует "неизменяемый" жест для вызова меню: горизонтальный свайп слева-направо от левого края экрана. Начинать тянуть надо от самого края экрана.
  3. Почему нет китайского / суахили интерфейса?
    Локализация будет в релизе, сейчас много и часто вносится изменений и добавляется новый функционал.
  4. Поддерживаются ли скины?
    Да. Инструкции и готовые скины см. в разделе "CSS, Скины, Расширенные настройки." -> "Скины".
  5. Поддерживаются ли CSS (каскадные таблицы стилей)?
    Да (кроме docx и odt). Инструкции см. в разделе "CSS, Скины, Расширенные настройки." -> "CSS".
    Форматы docx и odt CSS не поддерживают. Это аналоги doc со своими стилями.
  6. Как добавить свои шрифты?
    • AlReaderX может использовать как системные, так и "собственные" шрифты. Чтобы добавить свои шрифты, положите их в папку Fonts или fonts на "внутренней памяти" или на "внешней карте". Если такой папки нет, создайте её. На всякий случай перестартуйте читалку лонгтапом по иконке "Выход". Иногда даже требуется ребут устройства.
    • На Windows TTF шрифты должны лежать в подкаталоге /assets.
    • Создание пользовательского семейства шрифтов
  7. Где расположен файл настройки alrext.ini и файлы стилей *.css ?
    Файл настройки alrext.ini находится в папке:
    Если на девайсе стоит:
    • AlReaderX (стандартный), то
      <Внутренняя память>/Android/data/com.neverland.alreaderext/files/
    • AlReaderX Pro E-Ink, то
      <Внутренняя память>/Android/data/com.neverland.alreaderpro/files/
    • AlReaderX E-Ink, то
      <Внутренняя память>/Android/data/com.onyx.neverland.alreaderpro/files/
    • AlReaderX Simpl, то
      <Внутренняя память>/Android/data/com.neverland.alreadersimple/files/
      Расширенные параметры alrext.ini см. тут.
    • Для Windows версии он лежит в папке с самой программой.
    Файлы *.css лежат там же в подпапке asserts.
  8. Совместимы ли файлы конфигурации *.ini между Android и Windows версиями?
    Да, совместимы!* Их можно использовать кроссплатформенно: например, конфигурировать на Windows и переносить на Android.
    * В разделе "Расширенные настройки" описаны некоторые параметры, относящиеся только к одной из платформ.
  9. Как перенести все настройки, включая базы прочитанного и ресурсы, с одного устройства на другое?
    См. Инструкцию
    Примечание: Если штатный механизм бекапа по каким-то причинам недоступен, то инструкция по переносу здесь.
  10. Как создать ярлык книги на "Главном экране" устройства?
    В разделе "Настройки" -> "Controls" присвоить событие "Add Shortcut" какому-нибудь "жесту". Например "Two Finger Swipe Up".
  11. a. Поддерживается ли мышь в Android версии?
    • Да. Через OTG кабель.
      Левая кнопка: Тап, лонгтап и выделение текста после лонгтапа.
      Правая кнопка: Тап в любом месте - вызов меню. Лонгтап - выход их программы.
      Так же работают "однопальцевые скроллы": листание, яркость и т.п.
    b. Поддерживается ли стилус в Android версии?
    • Да. Стандартный стилус ведёт себя так же, как и "палец".
      Специфические функции стилусов от Samsung и т.п. НЕ поддерживаются.
  12. Как выставить отображение двух страниц в горизонтальной ориентации экрана?
    По умолчанию параметр Настройки -> Page -> Number of column установлен в "Auto". При этом 2 страницы в landscape отображаются только когда отношение размера фонта к ширине страницы меньше определённого значения.
    Принудительное отображение 2-х страниц делается установкой Number of column в "Two in landscape".
  13. Как "откатить" программу на более раннюю версию/сборку?
    "Старая" версия/сборка не устанавливается на "новую"! Т.е. программу нужно переустановить!
    Чтобы после отката восстановить настройки нужно:

    1. Предварительно сохранить настройки (сделать бэкап), и скопировать его в безопасное место. Бэкап расположен:
      • Для AlReaderX: <Внутренняя память>/AlReaderX/Backup
      • Для Pro: <Внутренняя память>/AlReaderXPro/Backup
      • Для E-ink: <Внутренняя память>/AlReaderXE-Ink/Backup
    2. Удалить AlReaderX.
    3. Установить "раннюю" сборку.
    4. Вернуть на место бэкап из п.1

  14. Планируется ли поддержка форматов pdf, DJVU?
    В планах есть, но в саму-самую последнюю очередь и если сами планы не изменятся. Оба формата - не относятся к художественной литературе.
  15. Почему номер страницы не всегда меняется при каждом перелистывании? / Почему количество страниц не соответствует бумажной версии книги?
    В AlReaderX "страницей" считается определенное количество символов; какое именно - можно настроить: "Настройки -> Страница -> Размер виртуальной страницы". Количество текста, которое помещается в данный момент на экране, зависит от размера шрифта, полей, наличия картинок и прочего. Иная логика нумерации страниц не запланирована.
    Рекомендуется значение символов на "виртуальной странице" устанавливать в "Авто". При этом количество страниц будет динамически пересчитываться в зависимости от числа символов, которые в данный момент видны на экране.
    При изменении, например, размера шрифта ("щипком"), будет наблюдаться автоматический пересчёт числа страниц (и соответственно номера текущей страницы). Если нужна "абсолютная привязка", выбирайте одно из константных значений (например 1024 символа).
    Но тогда не задавайте детских вопросов: "Почему при листании иногда номер страницы не меняется (или перескакивает через один)?"

  16. Как в Библиотеке просканировать отдельный каталог, а не все доступные "диски"?
    Вызвать Меню (тап по центру) -> Тапнуть на иконку "Открыть книгу" (первая внизу) -> "Открыть файл" и перейти к желаемой папке -> "Три точки" (справа) -> "Сканировать каталог".
  17. Как обрабатывать файл алиасов?
    Файл алиасов aliases.utf8.txt для AlReaderX раположен в папке /sdcard/Android/data/com.neverland.alreaderext/files/assets/.
    Синтаксис описан тут.
  18. Как финансово отблагодарить разработчика?
    На домашней странице http://alreader.com/ есть сведения о донатах.
  19. Будет ли функция поиска в настройках программы?
    См. тут: AlReaderX (Пост Alan)
  20. Можно ли перенести настройки из "старого" AlReader в AlReaderХ?
    Нет. Ни настройки, ни синхронизации, ни базы данных.
  21. Как работают паузы на TTS
  22. Почему "тормозит" построчная прокрутка?
    (цинк): Построчная прокрутка и разбиение текста на страницы - это в общем случае несовместимые понятия. И разбивка на страницы - гораздо более важна
    И, естественно, построчная прокрутка срабатывает не сразу, а только когда программа поймет, что это жест вверх или вниз. Можно отрубить все тапы и жесты, как в браузере, но вряд-ли это найдет понимание среди читателей...
  23. Как функционирует управление уровнем подсветки на устройствах с E-Ink экраном?
    AlReaderX на E-Ink не следит за уровнем подсветки и никак им не управляет. Только исполняет команды + и -
  24. Где сохраняется отредактированная книга?
    Отредактированная книга сохраняется в папке ~/AlreaderX/Books/EDITABLE/
    Изменить эту папку нельзя! Причина: тяжёлая форма Паранойи у Google на последних версиях Android. Дальше будет ещё хуже.
    Оригинальный файл не изменяется, где бы он не находился.
    В некоторых случаях это ограничение можно обойти при помощи параметра editsrc в alrext.ini
  25. Как включить "Режим свитка"?
    Настройка "Режима свитка".
  26. Адреса Флибусты:
  27. Как назначить свои имена категориям избранного (меткам)?
    Отредактировать параметры в ini файле. См тут

Как правильно описать проблему или баг:

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

  • При обнаружении проблемы(бага) нужно как можно подробнее их описать:
    Ваши действия -> Ожидаемый результат -> Наблюдаемый результат.
  • Багрепорт нужно выложить в этой ветке или переслать разработчику на почту: alan@alreader.com .
В баг-репорте небходимо указать:
  • Данные, обведенные красными рамками из скриншота нижней части окна "Настройки" -> "Информация" -> "О программе" (или приложить скриншот этого окна) или хотя бы Устройство и версию Android
    Пример скриншота "О программе"
    Прикрепленное изображение
В конкретной ситуации:
  • Лог:
    • Отправка системного лога встроена в программу: В меню "Настройки -> Информация". Т.е. получили сбой, перезапустили программу и сразу - лог на почту (см. выше).
    • Если почта недоступна, или, например, программа падает при запуске, то см. расположение файла лога, который можно "извлечь" и любым способом переслать разработчику (см. выше).
    • Иногда может понадобиться системный лог (Настройка логгирования даже без ROOT)
  • Указать формат (fb2, epub, doc и т.п.) и приложить проблемную книгу .
  • Скриншот(ы) или видео, на которых проявляется баг.
  • Пример


AlReaderX для Android.
  • Читать прежде, чем качать!
    • Ссылки на alreader.com - постоянные и указывают на свежайшие сборки. Номера версий и сборок apk в шапке приводятся в соответствие вручную. Поэтому сразу после обновления версии (сборки), они могут ещё быть не актуальными.
    • Все apk (Pro, EInk и т.д.) на сайте alreader.com обновляются одновременно со "универсальным" apk и имеют тот же номер сборки.
    • Расшифровка номера сборки, например DEBUG 0.81 2102253:
      • 0.81 - версия программы (присутствует не всегда);
      • 2102253 - номер сборки: 21 - год, 02 - месяц, 25 - число, 3 - "третья" сборка в этот день.
    • Обозначение Android 5+ значит 5 и выше (вплоть до самой свежей).
      Соответственно, Android 4.0.3+ значит с 4.0.3 и выше (вплоть до самой свежей).
    • В броузере Google Chrome ссылки на внешние источники нужно качать так
  • Описание вариантов AlReaderX
  • Блок-схема выбора варианта AlReaderX
  • История изменений. (Release Notes)


Скачать с сайта 4pda.ru Скачать с сайта alreader.com - "крайние" сборки.
Варианты с библиотеками статистики чтения на Onyx (они временно отключены!):
Версии для Android 4.0.3+ и Windows
  • Для Android 4.0.3+, API 15
    • Это - та же версия, что и для Android 5+, но собрана с возможностью запуска на ранних Андроидах.Примечания:
      • На Android [4.0.3 - 4.1] (API 15 -16) отсутствуют Скины, "Цвет кнопок/иконок", смена кнопок, меньше количество тем и т.д. и т.п.
      • На Android [4.0.3 - 4.4.4] (API 15 - 20) в режиме TTS нет управления кнопками гарнитуры и уведомлений на экране блокировки и в шторке.


    Для Windows (Разработка заморожена!):

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

Сообщение отредактировал Chudmin - 29.05.24, 12:52
Причина редактирования: Обновление: 1.17 DEBUG, 2405251, универсальный



Реп: (133)
artyums @ 29.05.24, 09:28 *
что часть книг я копировал на устройство сразу в папку Books, часть качались в папку Download и ее подпапки... В общем на устройстве бардак, что где лежит


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



Реп: (4)
* restOfmind, да, напишите, пожалуйста. Проблем с этим не будет :) Спасибо!



Реп: (1234)
artyums @ 29.05.24, 11:28 *
Как перенести книги между папками корректно?
Единственное, что не портится при переносе файла книги с места на место - это закладки.
То есть, делаешь закладку в книге, переносишь её в другое место, открываешь там, прогресс чтения сбрасывается. А закладка остаётся. И по ней можно сразу перейти в тексте туда, где остановился.
Для массового переноса ренее читанных книг этот метод не подходит, а вот для отдельных, читаемых именно сейчас - вполне.

Сообщение отредактировал yergnoor - 29.05.24, 10:09



Реп: (133)
artyums @ 29.05.24, 10:00 *
да, напишите, пожалуйста.


в течении дня подготовлю все эти скрипты. Их надо из почты и истории запросов повытягивать :)



Реп: (4875)
Приветствую!
Задача такая: на устройство другого человека установить ARX и сделать настройки "как у меня" (только настройки самой программы и оформление, без моих книг, закладок etc.).
Какой файл "подкинуть" на новое устройство, самый верхний, как я понимаю?
Прикрепленное изображение

:thank_you:



Реп: (4787)
The Che @ 29.05.24, 10:28 *
самый верхний, как я понимаю?

Почему его? Это же написано, что файл бэкапа.
Как мне кажется файл с именем alrxsettings.ini говорит сам за себя, нет?



Реп: (133)
The Che @ 29.05.24, 10:28 *
акой файл "подкинуть" на новое устройство, самый верхний, как я понимаю?


нужно подкинуть тот файл бекапа, который создан с параметром "Settings + Resource"

Добавлено 29.05.2024, 10:34:

clever_man @ 29.05.24, 10:30 *
Как мне кажется файл с именем alrxsettings.ini говорит сам за себя, нет?


зачем извращаться, если есть штатный бекап, который перенесет все оформление, включая и сторонние шрифты и сторонние скины



Реп: (4787)
restOfmind @ 29.05.24, 10:33 *
есть штатный бекап, который перенесет все оформление, включая и сторонние шрифты и сторонние скины

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



Реп: (133)
clever_man @ 29.05.24, 10:35 *
Я так понял, что нужны только настройки


да нет, человек же явно написал

The Che @ 29.05.24, 10:28 *
только настройки самой программы и оформление


оформление, это не только настройки, а еще и шрифты со скинами. А они могут быть своими

clever_man @ 29.05.24, 10:35 *
а тут, по-идее, еще и база данных перейдет.


БД пойдет, если вы укажите в типе бекапа All или Settings + DB
Сейчас специально проверил. БД в варианте "Settings + Resource" нет. Зато есть еще файлы css, aliases и много другого файлА, который считается Resources



Реп: (133)
инструкция по адаптации БД прочитанного после физического перемещения (а лучше для начала книги не перемещать, а скопировать) книг из каталога '/storage/emulated/0/Download' в каталог '/storage/emulated/0/Books'

Если вы не знакомы с SQL хоть немного, то лучше не лезть и ничего не перемещать, т.е. пусть все работает пока работает.
Исходные запросы взяты отсюда AlReaderX (Пост Alan #106109608) . Но на текущий момент этого недостаточно, дополнял запросы после консультаций с автором


1 Делаем бекап с включением БД прочитанного
2 Из полученного файла, который представляет собой зип архив достаем файл "alrxread.db". Это и есть сама БД, где хранится история чтения, закладки и прочее.
3 Обязательно делаем резервную копию (или не удаляем исходный бекап). Из резервной копии указанный в пункте 2 файл всегда можно "вернуть" в читалку, если при изменении что-то пошло не так, т.е. это возможность отката
4 Открываем БД в любой утилите, которая умеет работать с базами SQLite. Я использую SQLiteDatabaseBrowserPortable

5 Изменение истории прочитанного. Тут все просто. Так как корень карты памяти в нашей задаче не меняется, то достаточно одного запроса

UPDATE recent SET
filename = replace( filename, '/storage/emulated/0/Download', '/storage/emulated/0/Books' )
WHERE filename LIKE '/storage/emulated/0/Download%';


5.1 Если перемещать файлы из внутренней памяти на, например, карту памяти, то придется добавить в запрос правку поля "cardpath" (см. исходник запросов правки выше)
5.2 Если у вас были открытые книги по одному и тому же пути и в '/storage/emulated/0/Download' и в '/storage/emulated/0/Books', т.е., например, в истории прочитанного у вас есть открытые книги

'/storage/emulated/0/Download/TEST/1.fb2'
'/storage/emulated/0/Books/TEST/1.fb2'

то запрос выдаст ошибку. Очевидно это потому, что в результате из двух записей должна выжить только одна и никто кроме вас не решит, кто лишний.
Я просто удалил две строки из БД, на которых были такие конфликты, после чего все прошло успешно (искать глазами, долго :(, я выполнял запрос, ограничивая диапазон записей, чтобы набрести на проблемные строки. Что-то типа такого
UPDATE recent SET
filename = replace( filename, '/storage/emulated/0/Download', '/storage/emulated/0/Books' )
WHERE filename LIKE '/storage/emulated/0/Download%'
AND id < 1000;

)

5.2 Если вы не делаете закладок и прочих извращений, не закачивали книги из OPDS и т.д., то на этом можно закончить и перейти к пункту 8

6 Правка истории закачек и всего остального, что хранится в таблице filebmk (два запроса последовательно)

UPDATE filebmk SET
path = replace( path, '/storage/emulated/0/Download', '/storage/emulated/0/Books' )
WHERE path LIKE '/storage/emulated/0/Download%' AND (type = 1 OR type = 5 OR type = 7);


UPDATE filebmk SET
param5 = replace( param5, '/storage/emulated/0/Download', '/storage/emulated/0/Books' )
WHERE param5 LIKE '/storage/emulated/0/Download%' AND (type = 1 OR type = 5 OR type = 7);


7 Правка закладок на книги и всего, что хранится в таблице bookmarks

UPDATE bookmarks SET
filename = replace( filename, '/storage/emulated/0/Download', '/storage/emulated/0/Books' )
WHERE filename LIKE '/storage/emulated/0/Download%'


8 Если все прошло нормально, то файл нужно вернуть на место, для этого
8.1 Сохраняем изменения в БД
8.2 Закрываем читалку
8.3 Копируем файл во внутренюю память смарта '/storage/emulated/0/AlReaderX/Restore'


После запуска читалки все дожно работать так, как будто книги всегда лежали в '/storage/emulated/0/Books' и никто даже не подозревает, что раньше они были в '/storage/emulated/0/Download'
По крайней мере я ошибок и нестыковок не увидел. Если что-то не так, то всегда можно откатиться, вернув ранее сохраненную БД на место. Ну и конечно, пока вы не убедились, что все прошло успешно, файлы из '/storage/emulated/0/Download' лучше не удалять, а сначала просто скопировать.

Сообщение отредактировал restOfmind - 29.05.24, 14:53



Реп: (114)
Подскажите, кто разбирается - есть файл epub он открывается без переносов. Все остальные файлы открываются с переносами. Я уже и в сигиле его исправлял, и калибре коннвертировал - один черт - именно он открывается без переносов. С чем связано - не могу понять.

Прикрепленный файл100-кратники.epub ( 5.31 МБ )


Сообщение отредактировал van_der_alex - 29.05.24, 18:08



Реп: (133)
van_der_alex @ 29.05.24, 18:08 *
С чем связано - не могу понять.


может быть с тем, что переносы в этом файле явно запрещены во всех абзацах? :) Смотрите файл stylesheet.css, там для всех p с классами указано hyphens: none;



Реп: (0)
Подскажите, пожалуйста, как отменить (не создавать) историю открытых книг?



Реп: (503)
* Weqyz, не открывать книги. А чем она (история) мешает?



Реп: (125)
* Weqyz,
Из "Последние открытые" можно удалить, если не нужны какие-то книги (три точки справа).



Реп: (2)
Прошу прощения за глупый вопрос: неразрывный пробел по-прежнему игнорируется в AlReaderX?
Или где-то есть настройка, включающая его обработку?



Реп: (133)
prusaker @ 30.05.24, 16:17 *
Прошу прощения за глупый вопрос: неразрывный пробел по-прежнему игнорируется в AlReaderX?


где? В обычном тексте, естественно, игнорируется. В участках помеченных как код или стих, вроде остается



Реп: (2)
Очень жаль :(
Придётся оставаться на "старом" Alreader.



Реп: (2064)
prusaker @ 30.05.24, 20:15 *
Очень жаль
Придётся оставаться на "старом" Alreader.

Гм...
Я так прикинул, эта штука, которая может "пригодиться" ну... 1 раз на 300 страниц в конструкциях типа "ул. Виноградная".
Неужели это столь важно, что только ради этого приходится отказываться от "нового" AlreaderX? :russian_ru:



Реп: (2)
* Dasdranagon,

К сожалению в моём случае обработка неразрывного пробема является одним из определяющих факторов. Многие книги становится читать крайне неудобно. Особенно документальные, где большое количество фамилий с инициалами.
Я было попробовал читать их в AlReaderX, но моего терпения не хватило.

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


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 21.06.24, 21:33