# File lib/nanoc/filters/redcarpet.rb, line 42
    def run(content, params={})
      if ::Redcarpet::VERSION > '2'
        options          = params[:options]          || {}
        renderer_class   = params[:renderer]         || ::Redcarpet::Render::HTML
        renderer_options = params[:renderer_options] || {}

        if options.is_a?(Array)
          warn 'WARNING: You are passing an array of options to the :redcarpet filter, but Redcarpet 2.x expects a hash instead. This will likely fail.'
        end

        if renderer_class == ::Redcarpet::Render::HTML_TOC
          renderer = renderer_class.new
        else
          renderer = renderer_class.new(renderer_options)
        end
        ::Redcarpet::Markdown.new(renderer, options).render(content)
      else
        options = params[:options] || []
        ::Redcarpet.new(content, *options).to_html
      end
    end