We add more of Markdown's functionality to our Mini Markdown, written in Elixir, and we also add the capability to generate small and big tags, which Markdown doesn't do.
For the small feature, it does not seem necessary to escape minus signs, is it ? I wrote this :
defp small(txt) do
Regex.replace(~r/--(.*)--/, txt, "<small>\\1</small>")