Sha256: e9bc4ef9984c26e401dad494e5d92cdb05710877bc4653c4d76be722483f317b
Contents?: true
Size: 618 Bytes
Versions: 3
Compression:
Stored size: 618 Bytes
Contents
require 'albino' module Jack class Highlight def self.render(content) self.new.render(content) end def render(content) content.gsub(highlight_regex) do |s| Albino.new(unescape($2), extract_lang($1)) end end private def unescape(content) CGI::unescapeHTML content end def extract_lang(attributes) result = :ruby attributes.gsub(/(language|lang)=('|")([0-z]+)('|")/i) do |s| result = $3.to_sym end result end def highlight_regex /<pre><code([^<>]*)>(.*?)<\/code><\/pre>/im end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
jackb-0.0.3 | lib/jack/highlight.rb |
jackb-0.0.2 | lib/jack/highlight.rb |
jackb-0.0.1 | lib/jack/highlight.rb |