Mise à jour de VenC en version 3.2.2
VenC, un générateur libre (GPLv3) de site statique en python qui avait déjà été présenté dans une dépêche précédente, est de retour en version 3.2.2 avec tout un tas de nouvelles fonctionnalités cool qu’on va voir ici.
- lien nᵒ 1 : Site de l'auteur
- lien nᵒ 2 : Site de Jérémy Berry
- lien nᵒ 3 : Site du projet
- lien nᵒ 4 : Tipeee
- lien nᵒ 5 : Liberapay
Sommaire
- Auto-rafraîchissement lors de la prévisualisation
- Assignation d’un thème par défaut
- Amélioration des fonctionnalités FTP
- Thème par défaut
- Nouvelles balises VenC
- Le mot de la fin
Auto-rafraîchissement lors de la prévisualisation
Quand vous prévisualisez votre site avec venc -s
vous n’avez plus besoin de tuer le processus du serveur HTTP local et de régénérer manuellement le site à chaque modification. Le mécanisme est à présent automatique et détecte lui-même un changement pour vous présenter la version à jour de votre contenu ! La cache du navigateur étant parfois capricieux, VenC vous notifie dans la sortie standard de ses actions si jamais vous avez un doute.
Assignation d’un thème par défaut
Si vous utilisez le thème par défaut concrete
ou tout autre thème installé en dehors de votre projet il est possible de l’indiquer dans votre fichier de configuration. Ainsi venc -s
sait comment régénérer votre site si nécessaire, et vous n’avez plus besoin d’indiquer le nom du thème installé sur votre système lorsque vous utilisez la commande venc -xb
ou venc -xftp
.
Amélioration des fonctionnalités FTP
De nombreuses améliorations ont été apportées, en voici quelques-unes !
Transfert parallèle
Vous pouvez maintenant définir un nombre arbitraire de connexions FTP simultanées pour le transfert de votre site en ligne. Pour un petit site, ça ne fait pas de grosse différence, mais quand comme moi votre site comporte plusieurs centaines de pages, ça fait gagner un temps fou !
Verbosité accrue
- Affichage du prompt FTP
- Affichage des commandes FTP associées à leur numéro de session
Transfert intelligent
Pour économiser de la bande passante, VenC compare les fichiers locaux avec ceux en ligne. Ce faisant, il ne réalise que les opérations d’I/O strictement nécessaires.
Configuration FTP plus fine
Vous pouvez maintenant paramétrer les options suivantes :
-
ftp_encoding : VenC affichant à présent le prompt FTP du serveur, il est maintenant possible d’avoir des informations sur celui-ci, et notamment l’encodage. Avec l’option
ftp_encoding
, il est donc possible de configurer l’encodage de la session pour être en phase avec le serveur distant et éviter de mauvaises surprises. - ftp_sessions : comme on l’a vu plus haut, c’est le nombre de connexions parallèles possibles.
- ftp_port : avant, pour une raison obscure et injustifiable par le bon sens, le port de la connexion FTP était codé en dur… Maintenant c’est une valeur par défaut qu’il est possible de redéfinir.
Thème par défaut
Le thème par défaut a été amélioré, notamment au niveau de l’ergonomie et de la qualité visuelle du thème. Ce nouveau thème intègre par ailleurs les nouvelles fonctionnalités de la version 3.2 !
Nouvelles balises VenC
Accès amélioré à des métadonnées YAML
Une fonctionnalité ultérieurement manquante et utile dans certains cas d’usage est de pouvoir accéder à des valeurs qui sont imbriquées dans un ou plusieurs dictionnaires YAML dans le fichier de configuration principal ou dans les métadonnées d’une publication.
Pour ce faire, quatre fonctions VenC ont été ajoutés :
- CherryPickBlogMetadata
- CherryPickBlogMetadataIfExists
- CherryPickEntryMetadata
- CherryPickEntryMetadataIfExists
Pour les champs non obligatoires ou non prédéfinis par VenC, ça permet donc en conséquence une plus grande liberté dans l’organisation du contenu YAML.
Accéder à la date de la dernière publication
Utile pour la génération de flux Atom ou RSS, récupérer la date de la dernière publication d’un fil de publication permet d’indiquer la vraie date de mise à jour du flux :
Taxonomie Avancée
C’est la grosse fonctionnalité de cette mise à jour !
Avant la version 3.2 vous ne pouviez organiser vos publications “que” par catégories hiérarchisées. C’était déjà pas mal dans la mesure où ça permettait de créer des menus arborescents pour organiser votre contenu, mais parfois ça n’est pas suffisant. Par exemple, tout à fait au hasard, vous êtes un⋅e artiste et vous gérez votre portfolio avec VenC. Vous pourriez alors avoir un menu de la forme suivante pour organiser vos œuvres :
- Peintures
- Huile
- Acrylique
- Aquarelle
- Dessins
- Encre
- Crayon
- Mediums Mixtes
Et comme vous êtes un⋅e bon⋅ne p'tit⋅e libriste auto-radicalisé⋅e sur Framasoft et LinuxFr vos œuvres sont en partie sous licence CC-By-SA. En partie seulement car oui, vous faites aussi des fanarts, des travaux dérivés d’œuvres sous licences propriétaires. Vous voulez donc séparer ce qui est véritablement libre de ce qui ne l’est pas. En générant par exemple ce type de menu :
# Mediums
- Peintures
- Huile
- Acrylique
- Aquarelle
- Dessins
- Encre
- Crayon
- Mixtes
# Licences
- CC
- By-NC-ND
- By-SA
- Copyright
- Licence Art Libre
Ça tombe bien, c’est précisément ce que permet maintenant de faire VenC 3.2.
L’idée est la suivante : puisque l’arbre de toutes les catégories construit à partir de toutes les publications est un arbre hiérarchisé, il suffit de sélectionner une ou plusieurs branches de cet arbre pour créer nos menus et présenter notre contenu de la façon qu’il nous plaira.
Dans notre exemple précédent l’arbre hierarchisé de toutes les catégories aurait donc la forme suivante :
- Mediums:
- Peintures:
- Huile
- Acrylique
- Aquarelle
- Dessins:
- Encre
- Crayon
- Mixtes
- Licences:
- CC:
- By-NC-ND
- By-SA
- Copyright
- Licence Art Libre
Nous sélectionnons donc les branches Mediums
et Licences
. Avec les nouvelles fonctions VenC qui vont bien :
- GetBlogCategoriesTreeFromBranches
- GetFlattenedBlogCategoriesFromBranches
- GetEntryCategoriesTreeFromBranches
- GetFlattenedEntryCategoriesFromBranches
Sur le thème par défaut concrete
, vous pouvez ainsi avoir un nombre arbitraire de menu de catégories en configurant comme indiqué dans la documentation votre fichier de configuration principal.
À noter que même si ça n’est pas encore idéal, ce système ouvre la voie pour créer des blogs multilingues. Le brainstorming sur le sujet se passe ici. Pour l’heure, il est donc possible de tirer avantage de la taxonomie avancée pour créer des branches pour chaque langue que vous souhaitez utiliser. Avec un peu de JS vous pouvez aller plus loin pour rendre ça plus dynamique à votre convenance.
Le mot de la fin
Voilà pour cette nouvelle version !
La version 3.3 est déjà en cours de développement et vous pouvez suivre l’aventure ici. Un grand merci à Sidoine, Rollniak et Jérémy pour leur aide, leur confiance et leurs feedbacks !
Les sources GIMP
des illustrations sont accessibles ici sous licences CC-By-SA
Toutes les contributions sont évidemment les bienvenues :
- Corriger, relire ou améliorer la documentation.
- Signaler des bugs ou faire des suggestions.
- Écrire du code.
- Me faire aumône pour me payer un p'tit shot de Baileys Irish Cream !
Commentaires : voir le flux Atom ouvrir dans le navigateur