Sha256: 959609d262159cf72d82106946c9f2a9d504f7271df63c9f3c34fd673d0cd648

Contents?: true

Size: 410 Bytes

Versions: 1

Compression:

Stored size: 410 Bytes

Contents

require 'pygments'
require 'set'

module Retter
  module Markdown
    class PygmentsRenderer < Redcarpet::Render::HTML
      LANGUAGES = Set.new(Pygments.lexers.map {|_, l| l[:aliases] }.flatten)

      def block_code(code, lang)
        lang = LANGUAGES.include?(lang) ? lang : 'text'

        Pygments.highlight(code, lexer: lang, formatter: 'html', options: {encoding: 'utf-8'})
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
retter-0.2.5 lib/retter/markdown/pygments_renderer.rb