swerc

anselm's simpler werc fork
git clone git://git.suckless.org/swerc
Log | Files | Refs | README

commit f0db258c6d9810533514affd07a4270dff9932be
parent 52d159e1c9ce1218765b12ade79702c3576fdde6
Author: uriel@engel.se.cat-v.org <unknown>
Date:   Fri, 29 Jun 2007 10:28:58 +0200

Markdown caching system
Diffstat:
Mbin/controller.rc | 8+++++---
Abin/md_cache | 17+++++++++++++++++
2 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/bin/controller.rc b/bin/controller.rc @@ -8,6 +8,8 @@ ifs='/' { cd .. # default config +formater=markdown.pl +formater=md_cache # markdown cacher site=$SERVER_NAME sitedir=sites/$site headers=inc/headers.tpl @@ -83,8 +85,8 @@ fn blogTitle { fn genbody { if ( test -f $body.md ) { if ( ! ~ $#inBlog 0 ) - blogTitle $body.md | markdown.pl - markdown.pl < $body.md + blogTitle $body.md | $formater + $formater < $body.md } if not if ( test -f $body.tpl ) template.awk $body.tpl | rc $rcargs @@ -116,7 +118,7 @@ fn genbody { blogTitle $f cat $f echo - } | markdown.pl + } | $formater } } diff --git a/bin/md_cache b/bin/md_cache @@ -0,0 +1,17 @@ +#!/bin/rc +. 9.rc + +cachedir=/tmp/md_cache +mkdir -p $cachedir >[2]/dev/null + +tmpfile=$cachedir/mdtmp.$pid +score=`{{tee $tmpfile || exit 1} | sha1sum} +cachefile=$cachedir/$score + +if(test -f $cachefile) + cat $cachefile +if not { + markdown.pl < $tmpfile | tee $cachefile.$pid + mv $cachefile.$pid $cachefile +} +rm $tmpfile >[2]/dev/null