PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Saïmon : Quelques trucs pour Pelican

jeudi 25 octobre 2012 à 23:50

La version 3.0 de Pelican est sortie cet été. Pelican est le générateur statique de blog utilisé pour ce site et auquel je contribue lorsque j’en ai l’occasion. Ce billet regroupe quelques trucs et astuces pour faciliter son utilisation.

Archives par année

Pour regrouper les articles par année, dans la page des archives, l’astuce est d’utiliser la fonction groupby de jinja2 :

{% for year, list in dates|groupby('date.year')|reverse %}
  

{{ year }}

{% endfor %}

Gestion des assets (css, js)

Une de mes contributions à pelican est l’intégration de webassets, bibliothèque qui permet gérer les assets (css, javascript): concaténation, minification, compilation … L’utilisation de webassets est décrite dans la doc. Par exemple, pour les css:

{% assets filters="cssmin", output="css/style.min.css", "css/inuit.css", "css/pygment-monokai.css", "css/main.css" %}
    <link rel="stylesheet" href="{{ ASSET_URL }}">
{% endassets %}

va produire un fichier css minifié avec un tag de version pour la gestion du cache:

<link href="http://{SITEURL}/theme/css/style.min.css?b3a7c807" rel="stylesheet">

Ne pas générer certaines pages

Pour ne pas générer les pages pour chaque auteur (inutile quand il n’y a qu’un seul auteur):

AUTHOR_SAVE_AS = False

Pour ne pas générer les pages avec les liste de catégories et de tags:

DIRECT_TEMPLATES = ('index', 'archives')

Compilation automatique

Le module python watchdog permet de détecter les changements sur les fichiers pour relancer la compilation. On l’utilise avec la commande watchmedo:

watchmedo shell-command --patterns="*.rst" -i ".\\#*" \\
          --recursive --command="pelican -s pelican.conf.py" content

Gravatar de Saïmon
Original post of Saïmon.Votez pour ce billet sur Planet Libre.