Poole: генератор статических сайтов

Poole — генератор статических сайтов, написанный на Питоне, на нём же можно писать расширения.  Работает очень просто: копирует файлы из папки input в папку output, файлы с некоторыми расширениями преобразовывает по встроенным или описанным пользователям правилам.

Из коробки Poole умеет преобразовывать файлы Markdown в HTML.  Исходные файлы с раширением .md состоят из заголовка и тела, выглядят примерно так:

title: Заголовок страницы
date: 2013-11-20 14:04
---
Содержимое страницы:

- поддерживает форматирование;
- можно использовать HTML код;
- можно встраивать код на Питоне hello

Poole переводит содержимое этого файла в HTML, загружает шаблон page.html и подставляет результат в него.

Расширение с помощью плагинов

Плагинов в базовой версии Poole нет, но их легко добавить с помощью файла macros.py.  У меня плагины — это модули (файлы с расширением .py), которые живут в папке plugins.  Подключаются и настраиваются они добавлением такого кода в macros.py:

from plugins.meta import *
OG_COUNTRY_NAME = "Russia"
OG_LOCALITY = "Sebezh"
OG_EMAIL = "[email protected]"

Раньше я собирал все функции и хуки в macros.py — получался бардак.  Теперь в нём чисто, а весь код разложен по стройным плагинам, которые я повторно использую на разных своих сайтах.

Описание некоторых плагинов