Состоялся выпуск 9.0.0 библиотеки libzim, написанной на языке C++ и предназначенной для работы с файлами в формате ZIM. Разработка библиотеки ведётся и спонсируется проектом Kiwix.
ZIM — формат файла, предназначенный для офлайн-хранения информации, полученной из Web, в виде одного файла. В ZIM-файле в сжатом виде находятся логически связанные между собой html-страницы (а иногда и образы сайтов целиком) с работающими гиперссылками, изображениями, звуком и видео.
Проектом Kiwix разрабатывается набор консольных утилит zim-tools, десктопный и мобильные клиенты, и скрипты для создания файлов ZIM из дампов проектов Wikimedia или из HTML.
Также libzim используется в форке GoldenDict GoldenDict-NG.
Краткий список возможностей библиотеки:
- создание файлов ZIM c сжатием данных в формате Zstandard (ранее поддерживались форматы ZIP, LZMA и Bzip2);
- поиск по названиям статей;
- опциональная поддержка Xapian для полнотекстового поиска. Множество файлов ZIM можно скачать здесь.
Список изменений:
- исправлена ошибка в функции
getMediaCount()
, если в файле ZIM отсутствовала информацияM/Counter
; - оптимизирована функция
Entry::getItem()
; - обеспечена совместимость с C++17;
- поддержка последних версий фреймворка тестирования googletest;
- многочисленные исправления для Apple macOS/iOS и CI.
>>> Подробности