Cajun: a Creole processor in golang
Creole (which is a markdown like format, but simpler and safer) processor. Takes in creole outputs html.
![GoDoc] (https://godoc.org/github.com/m4tty/cajun?status.png)
An excuse to write a lexer. I also like Creole over Markdown. Because reasons. This Why Markdown Is Not My Favourite Language covers it pretty well.
With Go and git installed:
go get github.com/m4tty/cajun
will download, compile, and install the package into your $GOPATH
directory hierarchy. Alternatively, you can achieve the same if you
import it into a project:
import "github.com/m4tty/cajun"
and go get
without parameters.
It is a traditional lexer, but followed much of the strategy (a state machine that emits tokens on a channel) explained here by Rob Pike. [Lexical Scanning in Go - Rob Pike] (https://www.youtube.com/watch?v=HxaD_trXwRE)
Transform some input using:
output := cajun.Transform(input)