module Redcarpet::Render::SmartyPants

SmartyPants Mixin module

Implements #postprocess, which performs smartypants replacements on the HTML file, once it has been fully rendered.

To add SmartyPants postprocessing to your custom renderers, just mixin the module `include SmartyPants`

You can also use this as a standalone SmartyPants implementation.

Example:

# Mixin
class CoolRenderer < HTML
  include SmartyPants
  # more code here
end

# Standalone
Redcarpet::Render::SmartyPants.render("you're")

Public Class Methods

render(text) click to toggle source
# File lib/redcarpet.rb, line 49
def self.render(text)
  postprocess text
end

Public Instance Methods

postprocess(p1) click to toggle source
static VALUE rb_redcarpet_smartypants_render(VALUE self, VALUE text)
{
        VALUE result;
        struct buf *output_buf;

        Check_Type(text, T_STRING);

        output_buf = bufnew(128);

        sdhtml_smartypants(output_buf, RSTRING_PTR(text), RSTRING_LEN(text));
        result = redcarpet_str_new(output_buf->data, output_buf->size, rb_enc_get(text));

        bufrelease(output_buf);
        return result;
}