Gérer les sous-groupes de livres, par exemple « genre »

Certaines personnes souhaitent organiser les livres dans leur bibliothèque en sous-groupes, similaires à des sous-répertoires. La raison la plus habituellement donnée est de créer des hiérarchies de genre, mais il y en a beaucoup d’autres. Un utilisateur demandais une manière d’organiser des manuels par sujet et numéro de cours. Un autre voulait garder une trace de cadeaux par sujet et destinataires. Ce tutoriel utilisera l’exemple genre pour le reste de ce poste.

Avant de commencer, merci de noter que nous ne parlons pas de répertoires sur le disque dur. Les sous-groupes ne sont pas des répertoires de fichiers. Les livres ne seront copiés nul part. La structure de fichier de la bibliothèque calibre n’est pas affectée. Au lieu de cela, nous faisons une présentation d’une manière d’organiser et d’afficher des sous-groupes de livres dans une bibliothèque calibre.

Les requis habituellement donnés pour les sous-groupes comme les genres sont :

  • Un sous-groupe (par ex., un genre) doit contenir (pointer vers) des livres, pas des catégories de livres. C’est ce qui distingue les sous-groupes des catégories utilisateur calibre.

  • Un livre peut être dans de multiples sous-groupes (genres). C’est ce qui distingue les sous groupes des répertoires de fichier physiques.

  • Les sous-groupes (genres) doivent former une hiérarchie; les sous-groupes peuvent contenir des sous-groupes.

Les étiquettes vous donnent les deux premières. Si vous étiquetez un livre avec le genre alors vous pouvez utiliser le Navigateur d’étiquettes (ou la recherche) pour trouver les livres avec ce genre, vous donnant la première. Beaucoup de livres peuvent avoir la/les même(s) étiquette(s), vous donnant la deuxième. Le problème est que les étiquettes ne satisfont pas le troisième prérequis. Elles ne procurent pas une hiérarchie.

sgtree La fonctionnalité hiérarchie de calibre vous donne la troisième – la capacité de voir les genres dans un “arbre” et la capacité de facilement rechercher des livres dans genre ou sous-genre. Par exemple, supposons que votre structure de genre est similaire à ceci

Genre
    . History
    .. Japanese
    .. Military
    .. Roman
    . Mysteries
    .. English
    .. Vampire
    . Science Fiction
    .. Alternate History
    .. Military
    .. Space Opera
    . Thrillers
    .. Crime
    .. Horror
    etc.

En utilisant la caractéristique hiérarchie, vous pouvez voir ces genres dans le navigateur d’étiquettes sous la forme d’un arbre, comme montré dans la capture d’écran. Dans cet exemple, le niveau intrinsèque (Genre) est une colonne personnalisée qui contient les genres. Les genres contenant des sous genres apparaissent avec un petit triangle à leur suite. Cliquer sur ce triangle ouvrira l’élément et affichera les sous genres, comme vous pouvez le voir avec Histoire et Science Fiction.

Cliquer sur un genre peut rechercher tous les livres avec ce genre ou les descendants de ce genre. Par exemple, en cliquant sur Science Fiction vous aurez accès aux trois genres enfants de Alternate History, Military et Space Opera. Cliquer sur Alternate History donnera accès aux livres correspondant à ce genre précis, ignorant ceux qui sont dans Military et Space Opera. Bien sûr, un livre peut avoir plusieurs genres. Si un livre est à la fois Space Opera et Militaire, alors vous verrez ce livre en cliquant sur l’un ou l’autre genre. « Rechercher » est abordé plus en détail ci dessous.

Une autre chose que vous pouvez voir dans l’image est que le genre Military apparaît deux fois, une fois sous History et une fois sous Science Fiction. Parce que les genres sont dans une hiérarchie, ceux-ci sont deux genres séparés. Un livre peut être dans un, l’autre ou les deux (discutable dans ce cas). Par exemple, les livres « The Second World War » de Winston Churchill pourraient être dans « History.Military ». Les Honor Harrington de David Weber pourraient être dans « Science Fiction.Military », et pour cette matière également dans « Science Fiction.Space Opera. »

Une fois qu’un genre existe, c’est qu’il y a au moins un livre de ce genre, vous pouvez facilement l’appliquer à d’autres livres en faisant glisser les livres de la liste de la bibliothèque sur le genre que vous voulez leur donner. Vous pouvez également inclure les livres dans des genres par l’intermédiaire de l’Éditeur de métadonnées; plus sur ceci ci dessous.

Configuration

A présent, votre question peut être : « Comment mettre tout cela en place ? ». Il y a trois étapes : 1) Créer la colonne personnalisée, 2) Dire à calibre que la nouvelle colonne doit être traitée comme une hiérarchie, et 3) ajouter les genres.

Vous créez la colonne personnalisée par la voie habituelle, en utilisant Préférences–>Ajout de colonnes personnalisées. Cet exemple utilise « #genre » comme nom de recherche et « Genre » comme en-tête de colonne. Le type de colonne est « Texte séparé par des virgules, comme étiquettes, affichée dans le navigateur d’étiquettes. »

_images/sg_cc.jpg

Après avoir redémarrer calibre, vous devez dire à calibre que la colonne est à être traitée comme une hiérarchie. Allez dans Préférences → Apparence → Navigateur d’étiquettes et entrez le nom de recherche « #genre » dans la case « Catégories avec des articles hiérarchiques ». Cliquez sur Appliquer, et vous en avez fini de mettre en place.

_images/sg_pref.png

En ce moment, il n’y a aucun genre dans la colonne. Nous nous retrouvons avec la dernière étape : comment appliquer un genre à un livre. Un genre n’existe pas dans calibre jusqu’à ce qu’il apparaisse sur au moins un livre. Pour apprendre comment appliquer un genre pour la première fois, nous devons entrer dans certains détails au sujet de à quoi ressemble un genre dans les métadonnées d’un livre.

Une hiérarchie de “choses” est construite en créant un élément consistant en expressions séparées par des points. En continuant l’exemple genre, ces éléments seraient « History.Military », « Mysteries.Vampire », « Science Fiction.Space Opera », etc. Donc pour créer un nouveau genre, vous prenez un livre qui devrait avoir ce genre, éditez ses métadonnées, et entrez le nouveau genre dans la colonne que vous avez créée. En continuant notre exemple, si vous voulez attribuer un nouveau genre « Comics » avec un sous genre « Superheroes » à un livre, vous devrez “éditer les métadonnées” pour ce livre(bande dessinée), choisir l’onglet Métadonnées personnalisées, et entrer « Comics.Superheroes » comme affiché ici (ignorez les autres colonnes personnalisées) :

_images/sg_genre.jpg

Après avoir fait ce qui est indiqué plus haut, vous voyez dans le Navigateur d’étiquettes :

_images/sg_tb.jpg

A partir d’ici, pour appliquer ce nouveau genre à un livre (une bande dessinée, vraisemblablement), vous pouvez soit déposer le livre sur le genre, ou l’ajouter au livre en utilisant éditer les métadonnées exactement de la même manière que plus haut.

Note

L’affichage hiérarchique fonctionne uniquement si le Navigateur d’étiquettes est paramétré pour trier les éléments par nom. C’est l’option par défaut et elle peut être vérifiée en cliquant le bouton Configurer en bas du Navigateur d’étiquettes.

Recherche

_images/sg_search.jpg

La meilleure façon de chercher des genres est d’utiliser le navigateur d’étiquettes, de cliquer sur le genre que vous souhaitez voir. En cliquant sur un genre qui a des descendants, vous verrez tous les livres contenus dans ce genre et dans tous les descendants de ce genre. Cependant, ceci peut évoquer une question. Juste parce qu’un genre a des descendants ne signifie pas que ce n’est pas un genre de son propre chef. Par exemple, un livre peut avoir le genre « History » mais pas « History.Military ». Comment recherchez-vous des livres avec seulement « History » ?

Le mécanisme de recherche du Navigateur d’étiquettes sait si un élément a des sous éléments. S’il le fait, cliquer sur l’élément permet d’accéder à 5 variations de recherche au lieu de trois. Le premier est le plus vert normal, qui vous affiche les livres avec ce genre uniquement (par ex. History). Le second est le double plus (montré plus haut), qui vous affiche les livres avec ce genre et tous les sous genres (par ex. History et History.Military). Le troisième est le moins rouge normal, qui vous affiche les livres qui n’ont pas ce genre avec exactitude, Le quatrième un double moins, qui montre les livres sans ce genre ou les sous genres. Le cinquième est revenir au début, pas de marque, signifie pas de recherche.

Restrictions

Si vous recherchez un genre, créez une recherche sauvegardée pour celui-ci, vous pouvez utiliser la fonction Restriction pour créer une bibliothèque virtuelle contenant les livres de ce genre. C’est très utile si vous voulez faire d’autres recherches à l’intérieur du genre ou gérer/mettre à jour les métadonnées des livres dans le genre. Poursuivant notre exemple, vous pouvez créer une recherche sauvegardée nommée “History.Japanese” en cliquant d’abord sur le sous-genre Japanese dans le Navigateur d’étiquettes pour obtenir une recherche dans la barre de recherche, puis en entrant History.Japanese dans la boîte de Recherches sauvegardées, puis en appuyant sur le bouton « Enregistrer la recherche » (le carré vert avec un signe plus blanc du côté droit).

_images/sg_restrict.jpg

Après avoir créé la recherche sauvegardée, vous pouvez l’utiliser comme restriction.

_images/sg_restrict2.jpg

Modèles de fonctions utiles

Vous pourriez vouloir employer l’information de genre dans un modèle, comme avec Enregistrer sous ou Envoyer au périphérique . La question pourrait alors être « Comment est-ce que j’obtiens le nom ou les noms périphériques de ce genre ? » Un modèle de fonction calibre, sous-articles, est fournie pour faire cela facilement.

Par exemple, supposons que vous voulez ajouter le niveau de genre le plus périphérique au modèle save-to-disk pour faire des répertoires genre, comme dans « History/The Gathering Storm - Churchill, Winston ». Pour faire cela, vous devez extraire le premier niveau de la hiérarchie et l’ajouter au début avec une barre oblique pour indiquer qu’il devra en faire un répertoire. Le modéle ci-dessous accomplis cela:

{#genre:subitems(0,1)||/}{title} - {authors}

Voir Le langage des modèles pour plus d’informations sur les modèles et la fonction subitems().