Au lieu d'un blog/cms, j'aimerais avoir un site HTML statique avec quelques pages (rarement mises à jour). Je pense que la manière la plus simple de les mettre à jour est de garder les sources dans un format comme ReST, et de les compiler chaque fois qu'elles sont mises à jour. Qu'est-ce qu'un compilateur recommandé pour cet usage? J'aimerais avoir mon propre thème/design et je n'ai besoin de rien au-delà de la syntaxe ReST (Sphinx est trop, par exemple).Qu'est-ce qu'un compilateur de page Web simple pour le texte restructuré?
Répondre
rest2web pourrait être plus le genre de chose que vous recherchez.
Un Makefile serait une bonne solution pour cela. Voici un modèle rapide makefile
# Flags to pass to rst2html
# e.g. RSTFLAGS = --stylesheet-path=mystyle.css
RSTFLAGS =
%.html: %.rst
rst2html $(RSTFLAGS) $< [email protected]
.PHONY: all
.DEFAULT: all
all: index.html foo.html bar.html # any other html files to be generated from an rst file
Puis lancez simplement make
dans le répertoire avec vos fichiers pour générer le code HTML de la première
Si vous n'avez pas nécessairement besoin de texte restructuré, mais que le démarquage ou le textile est tout aussi bien, consultez jekyll.
Je l'utilise moi-même. Pouces vers le haut.
Je l'utilise aussi, mais je suis venu ici pour rechercher des capacités de texte restructurées pour jekyll! – joar
J'utilise nanoc3 avec docutils (via une installation sphinx) pour permettre une bonne prise en charge du texte restructuré dans un générateur de site statique. J'ai regardé (et je voudrais utiliser) une solution python pure (hyde) mais nanoc permet des fichiers sources ReST plus propres.
J'ai également envisagé d'utiliser un sphinx pour produire un site statique, mais ce n'est pas aussi simple de le faire sans rouler beaucoup de code pour le supporter.
Je suis heureux de détailler comment faire ceci précisément s'il y a toujours un intérêt pour ce sujet. Il utilise essentiellement docutils pour sortir html du reste de la source. J'ai simple processeur nanoc qui fait cela:
module Nanoc3::Filters
class ReST < Nanoc3::Filter
identifier :rest
def run(content, params={})
open('|rst2html.py --template=rest.template', 'r+') do |io|
io.write(content)
io.close_write
io.read
end
end
end
end
Le fichier rest.template est essentiellement un modèle factice avec la seule ligne suivante:
%(body)s
Vous pouvez utiliser un générateur de site statique. Il y a un milliard de personnes ...
J'ai décidé d'aller avec cela car il est le strict minimum - exactement ce que je voulais. Merci! –