Skip to content

Instantly share code, notes, and snippets.

@henrik
Created May 23, 2012 13:48
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save henrik/2775319 to your computer and use it in GitHub Desktop.
Save henrik/2775319 to your computer and use it in GitHub Desktop.
Prawndown! Super-tiny subset of Markdown for use with the Prawn PDF lib.
class Prawndown
constructor: (@text) ->
toPrawn: ->
@text.
replace(/\n/g, "<br>\n").
replace(/^# (.+)/gm, "<b>$1</b>")
# Use:
console.log (new Prawndown("# Foo\nbar")).toPrawn()
class Prawndown
def initialize(text)
@text = text
end
def to_prawn
@text.to_s.gsub(/^# (.+)/, '<b>\1</b>')
end
end
# Use in Prawn:
text = Prawndown.new("# Foo\nbar").to_prawn
pdf = Prawn::Document.new
pdf.text text, inline_format: true
@olimart
Copy link

olimart commented May 17, 2013

Hi, I came across your gist.

I followed your sample code but when I run pdf.text text, inline_format: true it returns => nil
(the first 2 steps work great)

I saved prawndown.rb in my models and prawndown.coffee under assets/javascripts

Any idea?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment