module Redcarpet::Render::SmartyPants - redcarpet-3.4.0 Documentation

# 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 87
    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, (const uint8_t*)RSTRING_PTR(text), RSTRING_LEN(text));
            result = rb_enc_str_new((const char*)output_buf->data, output_buf->size, rb_enc_get(text));

            bufrelease(output_buf);
            return result;
    }