модный статический блог

я уже не раз писал о том, как люблю сайты на статических файлах. Выходило слегка иронично, потому что сам блог с этими записями работал на очень даже динамическом Django. Однако в блоге всё-таки довольно много разных типов взаимосвязанных страниц, поэтому я даже не пытался перевести его на статические рельсы. Так и приходилось жить, регулярно страдая от необходимости подстраивать код под очередной релиз Django.

а вот в 2014 году мне стало попадаться много ссылок про инструменты, которые замечательно облегчают создание таких статических сайтов, и порой даже легко интегрируются с гитхабом. «Время пришло,» — подумал я, и взялся изучать тему. Инструментов оказалось в изобилии, но только потому, что самих подходов тоже изобилие. Например, есть metalsmith со своими плагинами, который из-за отчаянной низкоуровневости мало чем отличается от программирования всего самостоятельно. Например, есть DocPad, который умеет кучу всего, не фокусируясь непосредственно на блогах. Есть по паре движков под модные языки программирования, которые работают именно над блогами. Из них самым заметным в моих новостях был jekyll, но он оказался на Ruby, и с ним снова пришлось бы отлаживать запутанный код на малознакомом языке, а для этого мне хватает Питона. В рамках набора опыта с Node.js я попытал счастья с Hexo, но не смог преодолеть некоторые из его противоестественных практик.

в итоге я остановился на пеликане, и вот этот пост пишу уже в него. Процесс занял некоторое время, потому что пришлось вынимать данные из старого блога в нужном формате, подстраивать шаблоны под слегка отличающийся синтаксис и кардинально новые API, а также (как и ожидалось) отправлять авторам несколько исправлений и дополнений. Поскольку каждое из них нужно оформлять как отдельный pull request, я познал радость ручной интеграции оных в своей копии кода. Но результатом я пока что доволен, посмотрим теперь, как пойдёт дальше.

я ведь теперь и из ЖЖ хочу перенести блог на эту же платформу.

Артемий Трегубенко,
, , ,

comments powered by Disqus