Что такое простой компилятор веб-страниц для реструктурированного текста?

StackOverflow https://stackoverflow.com/questions/2096558

Вопрос

Вместо блога/cms я хотел бы иметь статический сайт на базе HTML с несколькими (редко обновляемыми) страницами.Я полагаю, что самый простой способ их обновления — это сохранять исходные коды в формате, таком как ReST, и компилировать их каждый раз при обновлении.Какой компилятор рекомендуется для этого использования?Я хотел бы иметь свою собственную тему/дизайн, и мне не нужно ничего, кроме правильного синтаксиса ReST (например, Sphinx — это слишком много).

Это было полезно?

Решение

rest2web возможно, это больше то, что вы ищете.

Другие советы

Makefile будет хорошим решением для этого.Вот быстрый make-файл шаблона

# Flags to pass to rst2html
# e.g. RSTFLAGS = --stylesheet-path=mystyle.css 
RSTFLAGS = 

%.html: %.rst
        rst2html $(RSTFLAGS) $< $@

.PHONY: all
.DEFAULT: all

all: index.html foo.html bar.html # any other html files to be generated from an rst file

Тогда просто беги make в каталоге с вашими файлами, чтобы сгенерировать html с самого начала

Если вам не обязательно нужен реструктурированный текст, но уценка или текст тоже подойдут, тогда попробуйте Джекилл.

Я использую его сам.Недурно.

я использую нанок3 вместе с документами (через установку sphinx), чтобы обеспечить хорошую поддержку реструктурированного текста в генераторе статических сайтов.Я рассмотрел (и хотел бы использовать) чистое решение Python (hyde), но nanoc позволяет использовать более чистые исходные файлы ReST.

Я также рассматривал возможность использования sphinx для создания статического сайта, но сделать это не так просто, не написав много кода для его поддержки.

Буду рад подробно рассказать, как именно это сделать, если к этой теме еще есть интерес.По сути, он использует docutils для вывода HTML из исходного кода.У меня есть простой процессор nanoc, который делает это:

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

Файл rest.template по сути представляет собой фиктивный шаблон со следующей единственной строкой:

%(body)s

Возможно, вы захотите использовать генератор статических сайтов.Их миллиард…

https://www.staticgen.com/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top