En cours de rédaction :
: plus à jour…
En terme de publication Web, j'utilise, ou j'ai utilisé, différents outils, comme par exemple :
Pour diverses raisons, je cherche à explorer d'autres pistes, comme Jekyll, Makefly ou Pelican. Sur cette page, je documente ma découverte [laborieuse] de ce dernier.
J'ai utilisé la documentation officielle (html), qui existe aussi en PDF ou en ePub.
J'ai rangé ce moteur de site statique dans la partie serveur de ce wiki, mais je l'installe sur mon ordinateur de bureau.
mkdir /chemin/vers/repertoire/
mkvirtualenv [nom]
workon [nom]
cd /chemin/vers/repertoire/
Chez moi repertoire
et [nom]
sont identiques, je ne sais pas si c'est nécessaire.pip install pelican
pip install Markdown
pip install Fabric
mkdir /chemin/vers/repertoire/site
cd /chemin/vers/repertoire/site
pelican-quickstart
et répondre aux questions
Ça se passe dans /chemin/vers/repertoire/site/content
. On peut mkdir pages articles
pour avoir les répertoires qui vont bien, avec des pages statiques et des articles aux bons endroits. On peut également mkdir images docs
et d'autres pour avoir des répertoires contenant les images, les documents mis à disposition, etc.
Lorsque l'on crée ces derniers répertoires, il faut les ajouter à la listes des chemins statiques, dans le fichier pelicanconf.py
, avec STATIC_PATHS = ['images', 'docs', …]
.
On peut le faire avec fab build
. Dans ma configuration, il faut que l'environnement virtuel soit activé, bien entendu. fab regenerate
permet d'automatiser la génération à chaque modification.
Attention : lors de mon premier essai, à la génération du site après ajout d'une page statique, rien ne s'est passé et les erreurs suivantes se sont affichées :
WARNING: Could not process output/authors.html 'NoneType' object has no attribute 'lower' WARNING: Could not process output/archives.html 'NoneType' object has no attribute 'lower' WARNING: Could not process output/index.html 'NoneType' object has no attribute 'lower' WARNING: Could not process output/tags.html 'NoneType' object has no attribute 'lower' WARNING: Could not process output/categories.html 'NoneType' object has no attribute 'lower'
Après quelques rapides recherches, il s'avère qu'il est nécessaire de préciser également dans le pelicanconf.py
le PATH = 'content
'
fab serve
démarre un serveur web local, sur le port 8000
. Du coup, on peut afficher son site sur http://localhost:8000
.
Les thèmes se trouvent dans ~/.virtualenvs/[install-pelican]/lib/python2.7/site-packages/pelican/themes
. J'imagine que le plus simple pour commencer, c'est de faire une copie du thème simple, et de tester des modifications sur ce dernier.