Новый движок моего блога

Ноябрь 26, 2012, 19:00

В оче­ред­ной раз пе­ре­де­лал дви­жок сво­е­го бло­га. Те­перь у меня чи­сто ста­ти­че­ский блог, ле­жа­щий в Ama­zon S3. Преды­ду­щая вер­сия бла­го­по­луч­но и без еди­но­го на­ре­ка­ния от­ра­бо­та­ла свои год и 9 ме­ся­цев. Те­перь на­ста­ло вре­мя пе­ре­мен.

Мне ка­жет­ся, что сум­мар­ное вре­мя, ко­то­рое я тра­чу на про­грам­ми­ро­ва­ние движ­ков сво­е­го бло­га, уже пре­вы­ша­ет вре­мя на то что­бы что-то сюда пи­сать. И уж во вся­ком слу­чае это явно срав­ни­мые ве­ли­чи­ны.

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

Для ин­те­ре­су­ю­щих­ся неко­то­рые тех­ни­че­ские по­дроб­но­сти:

Ге­не­ра­тор

Тут для меня без ва­ри­ан­тов — Haskell. Са­мый глав­ный дей­ству­ю­щий пер­со­наж тоже по­ня­тен — Has­tache, не зря же я его пи­сал.

Ор­га­ни­за­ция

Тех­ни­че­ски каж­дая за­пись в бло­ге вы­гля­дит так: от­дель­ная ди­рек­то­рия с име­нем типа «2011-02-28 16:03 new en­gine», внут­ри ле­жит файл def.json с за­го­лов­ком и те­га­ми этой за­пи­си, файл text.html с тек­стом, и ка­кие-ни­будь до­пол­ни­тель­ные фай­лы (если они в этой за­пи­си нуж­ны). Та­кие вот ра­кет­ные тех­но­ло­гии бло­го­стро­е­ния. Text.html — это не про­сто чи­стый html, это ещё и кое-ка­кая до­пол­ни­тель­ная раз­мет­ка, на­при­мер для встав­ки ма­те­ма­ти­че­ских фор­мул ( ру­лит) или ис­ход­но­го кода с под­свет­кой син­так­си­са (high­light­ing-kate). До­пол­ни­тель­ная раз­мет­ка боль­шей ча­стью пред­став­ле­на сек­ци­я­ми Has­tache.

Ти­по­гра­фи­ка

Ммм, это пря­мо моя пре­лесть. Не по­ни­маю чего ни­кто пе­ре­но­сов в вебе не де­ла­ет, на­мно­го ведь при­ят­ней вы­гля­дит, осо­бен­но если текст рас­тя­нут по ши­рине. Тех­ни­че­ски сами пе­ре­но­сы уже сто лет как до­ступ­ны во всех бра­у­зе­рах. У меня те­перь всё с пе­ре­но­са­ми, кра­со­та да и толь­ко. Пе­ре­но­сы рас­став­ля­ет са­мо­пи­сан­ная биб­лио­те­ка (ра­бо­та­ет по ал­го­рит­му Ляна-Кну­та), я её на­пи­сал для qr­ma­nia.ru, и вот опять при­го­ди­лась. Надо бы вы­ло­жить в Hack­age, но пока QA-от­дел в моей го­ло­ве это­го не поз­во­ля­ет.

Ра­бо­та с S3

Сна­ча­ла ду­мал обой­дусь s3cmd, но в ито­ге на­пи­сал соб­ствен­ный син­хро­ни­за­тор для S3, бла­го для Haskell есть биб­лио­те­ка aws. Кста­ти, я в неё за­ком­ми­тил ра­бо­ту с ре­ди­рек­та­ми S3, но эта вер­сия в на­сто­я­щий мо­мент ещё не вы­ло­же­на в Hack­age, кому сроч­но надо бе­ри­те пря­мо с GitHub.

blog comments powered by Disqus
Сергей Лымарь © 2005-2014, Все права защищены.