Publication du catalogueur de bibliothèque personnelle MyLibrary 4.3

La nouvelle version du catalogueur de bibliothèque personnelle MyLibrary 4.3 est disponible. Le code du programme est écrit en C++ et est accessible (GitHub, GitFlic) sous licence GPLv3. L'interface graphique utilisateur a été réalisée avec la bibliothèque GTK4. Le programme est adapté pour fonctionner sur les systèmes d'exploitation de la famille Linux et Windows. Pour les utilisateurs d'Arch Linux, un script de compilation du package prêt est disponible dans l'AUR. Pour les utilisateurs de Windows, un installateur expérimental est disponible.

MyLibrary catalogue les fichiers de livres aux formats fb2, epub, pdf, djvu, odt, txt, md, tant ceux accessibles directement que ceux compressés dans des archives (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), en créant sa propre base de données sans modifier les fichiers originaux ni changer leur emplacement. Le format fbd (fichier de livre, compressé dans une archive avec un fichier portant l'extension fbd contenant une étiquette description au format fb2) est également disponible pour la catalogisation. Dans le format fbd, tout type de fichier peut être stocké, pas seulement des livres. L'intégrité de la collection et ses modifications sont assurées par la création d'une base de données de sommes de contrôle des fichiers et des archives.

Différentes opérations sur la collection sont possibles : mise à jour (une vérification de l'ensemble de la collection et une comparaison des sommes de contrôle des fichiers disponibles sont effectuées), mise à jour rapide (les tailles des fichiers sont comparées), exportation et importation de la base de données de la collection, ajout de livres à la collection et suppression de livres de la collection, ajout de dossiers de livres à la collection, ajout d'archives de livres à la collection, copie de livres de la collection dans un dossier arbitraire. Une édition manuelle des enregistrements de livres dans la base de données est disponible. Un mécanisme de signets a été créé pour un accès rapide aux livres. Il est possible de créer des notes personnelles sur les livres. Une interface est disponible pour créer et connecter des plugins.

Diverses opérations sont possibles avec la collection : mise à jour (vérification de l'ensemble de la collection et comparaison des sommes de contrôle des fichiers disponibles), mise à jour rapide (sans recalculer les sommes de contrôle), exportation et importation de la base de données de la collection, ajout et suppression de livres de la collection, ajout de dossiers contenant des livres à la collection, ajout d'archives avec des livres à la collection (y compris l'emballage de livres et/ou de dossiers lors de l'ajout), copie de livres de la collection vers un dossier arbitraire, déplacement de livres d'une collection à une autre. Il est possible d'éditer manuellement les entrées sur les livres dans la base de données. Un mécanisme de signets a été créé pour un accès rapide aux livres. Il existe une possibilité de créer des notes personnelles sur les livres. En option, une interface pour créer et connecter des plugins est disponible. La documentation sur les bibliothèques MLBookProc, MLPluginIfc et XMLParserCPP (comprises dans le projet) peut être ouverte si elle a été créée lors de la compilation.

Modifications significatives :

  • Les méthodes de travail avec des fichiers XML ont été extraites dans la bibliothèque XMLParserCPP (incluse dans la bibliothèque MLBookProc, pouvant être utilisée complètement de manière indépendante).
  • Une documentation a été créée pour la bibliothèque XMLParserCPP.
  • Des erreurs lors du traitement de fichiers XML mal formés ont été corrigées.
  • La bibliothèque MLBookProc a été mise à jour pour utiliser std::exception comme indicateur d'erreurs.
  • Certaines méthodes et classes de la bibliothèque MLBookProc sont obsolètes (voir la documentation pour plus de détails).
  • Dans la version basée sur std::thread, une distribution explicite des threads sur les cœurs du processeur a été ajoutée pour certaines fonctions.
  • L'affichage des couvertures de livres a été accéléré.
  • Les fonctions de recherche ont été améliorées.
  • Le support des encodages de texte a été amélioré.
  • Une vérification de la présence de fichiers dans les archives a été ajoutée à la fonction de mise à jour rapide de la collection.

Les recommandations pour l'utilisation du programme ont également été mises à jour. On peut noter en particulier :

  • La chaîne de recherche « Nom » peut être utilisée comme une chaîne de recherche universelle pour les auteurs. C’est-à-dire que les utilisateurs peuvent y entrer le nom, le prénom, le patronyme et/ou le pseudonyme de l'auteur, et pas seulement le nom.
  • Les livres de la collection peuvent être stockés sur un le serveur. Dans ce cas, les utilisateurs doivent configurer l'accès à serveur via le protocole SMB, puis monter le dossier parent de la collection sur les machines clientes à l'aide de gvfs, kio-fuse ou d'analogues (en préservant l'authentification pendant la session, si nécessaire). Si tout a été configuré correctement, MyLibrary pourra fonctionner avec les dossiers connectés sur le réseau comme avec des dossiers locaux, sans aucun réglage supplémentaire. Pour accélérer le fonctionnement, après la connexion via le protocole SMB, les collections peuvent être créées uniquement sur un PC, après quoi il est possible d'utiliser les fonctions d'exportation et d'importation de la base de données de la collection.

On peut également noter la mise à jour du plugin MLInpxPlugin, conçu pour importer des collections à partir de fichiers inpx (disponible sous licence GPLv3 sur altlinux.space et GitHub). Pour les utilisateurs d'Arch Linux, un script de build du paquet prêt à l'emploi est disponible dans l'AUR. Les modifications de la nouvelle version se concentrent sur l'ajout d'une distribution explicite des threads sur les cœurs du processeur dans la version basée sur std::thread.

On peut également noter la mise à jour du plugin MLFBDPlugin, destiné à créer des fichiers au format fbd. Dans la nouvelle version, le plugin a été migré vers l'utilisation de la bibliothèque XMLParserCPP pour enregistrer des fichiers au format XML, et certaines erreurs ont été corrigées.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster