2010-01-19 5 views
4

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

2

rest2web pourrait être plus le genre de chose que vous recherchez.

+0

J'ai décidé d'aller avec cela car il est le strict minimum - exactement ce que je voulais. Merci! –

5

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

1

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.

+0

Je l'utilise aussi, mais je suis venu ici pour rechercher des capacités de texte restructurées pour jekyll! – joar

0

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