A perl script that reads all posts from main-articles/ as markdown and creates them as HTML articles in output/ dir. It also reads and creates individual pages based on files that exist in pages/ directory.
Deps: Text-Markdown (http://search.cpan.org/~bobtfish/Text-Markdown-1.000031/)
It also creates a main page as index.html with all links to posts and pages generated.
Files included are:
. |-- LICENSE |-- README |-- TODO |-- bin | |-- bliper-create-post.sh | |-- bliper-deploy.sh | |-- bliper-generate.pl | `-- bliper-menu-creation.sh |-- main-articles | |-- 2013-11-07-readme | `-- 2013-11-10-markdown-notes |-- output | |-- images | | `-- puffytron.jpg | `-- style.css |-- pages | |-- about | `-- contact `-- template |-- footer |-- main-bottom |-- main-top |-- page-bottom `-- page-top
use this instead of
touch <file> for your posts. It just prepends
date '+%Y-%m-%d' to the beginning of the filename.
bin/bliper-deploy.sh is a script tha "deploys" the website. It's based on rsync and I've included a sample config. Just change "user@host:/path/to/output" with the real one.
bin/bliper-generate.pl is the main script that parses every post in input/ and recreates it as HTML in output/. It also creates the index.html page and appends all links to posts.
bin/bliper-menu-creation.sh upon generation, a file called 'tmp' gets created. Then, this script replaces all "insertmenu"(in capital) strings in templates with the real menu. Nothing fancy, but you need to run this before deployment or viewing to generate your menus in all pages.
main-articles is the directory which serves as the place to create all posts in markdown.
output is the directory which all generated pages are placed. Edit the style.css file according to your needs.
pages is the directory which produced all new pages (again, sample included).
template main-top is the top section of the main page. main-bottom is the bottom section of the main page. page-top is a generic template for the top section of any post page. page-bottom is a generic template for the bottom section of any post page. footer is just the footer appended in all pages.
I've included a demo file in input/markdown-notes. Just run
bliper-generate.pl in your main directory,
$BROWSER output/index.html to see the demo. There is also the option to rsync the files to your server with