Sha256: 0107e08bda24a3a8c649b8b8708d5ef1b2bbbedea07dceb9176400dde4a37b3b

Contents?: true

Size: 637 Bytes

Versions: 1

Compression:

Stored size: 637 Bytes

Contents

unless defined?(CustomRender)
  class CustomRender < Redcarpet::Render::Safe
    # include Redcarpet::Render::SmartyPants
    BR = '<br/>'

    def initialize(extensions = {})
      super(extensions)
    end

    def paragraph(text)
      text + BR
    end

    def postprocess(full_document)
      strip_trailing_br(colorize(full_document))
    end

    private

    def colorize(doc)
      doc.gsub(/{c:([#\w]\w+)}([^{]+){\/c}/) {|m| "<span style=\"color:#{$1};\">#{$2}</span>"}
    end

    def strip_trailing_br(doc)
      return doc unless doc.reverse[0...BR.length]==BR.reverse
      doc[0...doc.length-BR.length]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
voom-presenters-0.2.0 lib/voom/presenters/web_client/markdown_render.rb