Izdanje MyLibrary 5.0 katalogizatora kućne biblioteke

Состоялся релиз каталогизатора домашней библиотеки MyLibrary 5.0. Код программы написан на языке программирования С++ и доступен (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс пользователя реализован с помощью библиотеки Qt6. Программа адаптирована для работы в операционных системах семейства Linux и Windows. Для пользователей Arch Linux в AUR доступен сценарий сборки готового пакета. Для пользователей Windows доступен экспериментальный инсталлятор.

MyLibrary каталогизирует файлы книг в формате fb2, epub, pdf, djvu, odt, txt, md, как доступные напрямую, так и упакованные в архивы (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), и создаёт собственную базу данных, не изменяя исходные файлы и не меняя их положения. Для каталогизации также доступен формат fbd (файл книги, упакованный в архив вместе с файлом с расширением fbd, содержащем тег description формата fb2). В формате fbd могут храниться любые файлы, не только книги. Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов.

Realizovano je pretraživanje knjiga po različitim kriterijumima (prezime, ime, srednje ime autora, naslov knjige, serija, žanr) i njihovo čitanje kroz program koji je podrazumevano instaliran u sistemu za otvaranje odgovarajućih formata datoteka. Kada odaberete knjigu, prikazuje se sažetak knjige i naslovnica, ako su dostupni. Podržano je prikazivanje liste datoteka uključenih u kolekciju; spisak knjiga uključenih u određeni fajl; spisak autora zbirke; lista knjiga za koje je korisnik kreirao bilješke.

S kolekcijom su moguće različite operacije: ažuriranje (skenira se cijela kolekcija i provjeravaju se heš sume dostupnih datoteka), brzo ažuriranje (upoređuju se veličine datoteka), izvoz i uvoz baze podataka kolekcije, dodavanje i uklanjanje knjiga iz kolekcije, dodavanje fascikli s knjigama u kolekciju, dodavanje arhiva knjiga u kolekciju i kopiranje knjiga iz kolekcije u bilo koju fasciklu. Dostupno je ručno uređivanje zapisa o knjigama u bazi podataka. Dostupan je mehanizam za označavanje za brzi pristup knjigama. Mogu se kreirati prilagođene oznake. Dostupan je interfejs za kreiranje i povezivanje dodataka (plug-inova).

MyLibrary može raditi s kolekcijama koje se nalaze na eksternom serveru (odgovarajuće mape i datoteke moraju biti dostupne putem SMB protokola i montirane na lokalni računar pomoću gvfs-a, kio-fuse-a ili njihovih ekvivalenata).

Značajne promjene:

  • Проект переведён на использование нового типа базы данных (коллекции, закладки, заметки).
  • Добавлен слой совместимости со старыми базами данных: коллекции, созданные в предыдущих версиях программы, загружаются и работают в режиме ограниченной функциональности (отключены функции редактирования базы данных и некоторые другие), закладки и заметки — без каких либо ограничений (старые базы будут автоматически преобразованы в новые при изменении заметок или закладок).
  • Графический интерфейс переведён на использование Qt6.
     Izdanje MyLibrary 5.0 katalogizatora kućne biblioteke
  • Изменено поведение функции создания коллекций — теперь в коллекцию можно добавлять произвольный набор папок и поддерживаемых файлов.
     Izdanje MyLibrary 5.0 katalogizatora kućne biblioteke
  • Добавлена функция создания коллекций из inpx файлов. Содержимое inpx файлов будет загружаться «на лету» при переключении на соответствующую коллекцию. Inpx коллекции работают в режиме ограниченной функциональности (отключены функции редактирования базы данных и некоторые другие).
     Izdanje MyLibrary 5.0 katalogizatora kućne biblioteke
  • Изменено поведение функции обновления коллекций. При попытке обновления устаревших и inpx коллекций они будут преобразованы в нативные. При обновлении нативных коллекций — в случае быстрого обновления — проверяются наличие и размеры файлов, если размер файла изменился — будет выполнен его повторный разбор. При обычном обновлении вместо размеров проверяются хеш-суммы файлов.
  • Ponašanje funkcije za dodavanje knjiga u postojeću kolekciju je promijenjeno. Nove knjige se sada dodaju u bazu podataka bez premještanja odgovarajućih datoteka.
  • Performanse algoritama za pretraživanje su poboljšane.
  • Funkcija za prikaz autora kolekcija je ubrzana.
  • API biblioteke MLBookProc i biblioteke za povezivanje dodataka (plug-inova) je redizajniran.
  • Улучшена работа библиотеки разбора xml файлов, добавлена начальная поддержка формата html.
  • Отключена возможность создания документации внутренних библиотек в формате pdf. Вместо неё добавлена документация в виде man страниц. Документация в формате html — без изменений.
  • Za asembliranje je sada potrebna podrška kompajlera za standard C++20.
  • Podrška kompajlera za OpenMP standard je premještena u obaveznu kategoriju.
  • Promijenjeni su skripti za izgradnju i opcije izgradnje.
  • Ostale manje promjene i poboljšanja.

Дополнительно можно отметить обновление плагина MLFBDPlugin (доступен под лицензией GPLv3 на altlinux.space и GitHub, для пользователей Arch Linux доступен в AUR), предназначенного для создания файлов в формате fbd. В новой версии плагин переведён на использование Qt6.

 Izdanje MyLibrary 5.0 katalogizatora kućne biblioteke

Также можно отметить первый выпуск плагина MLArchiverPlugin. Плагин предназначен для создания и редактирования архивов и доступен (altlinux.space, GitHub, AUR) под лицензией GPLv3.

Репозитории плагина MLInpxPlugin переведены в архивный режим — функциональность плагина включена в состав основной программы.

izvor: opennet.ru