Joshua Deakin


< previous next >

2015.09.29 - !!Bang!!

So... I decided it would be fun to design my own static website generator.

So, I decided it would be fun to design my own static website generator to help build my own site. This involved designing a markup language and interpreted scripting language. The generator is called !!Bang!! because you use two bangs (exclamation marks, !!) prefix and postfix around keywords in text files. These keywords are then replaced with specific values later.

Keyword values can be a word, a line of text, a file of text or even the output of a python script. This allows to change content easily as well as make HTML and CSS code very modular. Here is an example html template that could be reused with every page of a website:


!! html-open!!
!! head !!
!! header !!
!! main !!
!! footer !!
!! html-close !!

This is what I use to to generate this website.

Bang scripts are used to determine the values of keywords, how files should be processed, and when to process them. If you're interested in reading more about this you can check it out here, linked through my projects page. Who knows, you might actually have a use for it!

< previous next >