Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

extended_markdownizer

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

extended_markdownizer

  • 0.1.3
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

#Extended Markdownizer

A simple gem for Rails 3 to render some ActiveRecord text field as Markdown!

Based on Markdownizer, by Txus.

It mixes CodeRay and RDiscount to give you awesome code highlighting :)

Besides that:

  • Converts Youtube urls into embedded videos.
  • Converts Vimeo urls into embedded videos.
  • Detects urls and converts into anchors.

You can check the generated Rocco documentation on the project page.

##Install

In your Gemfile:

gem 'extended_markdownizer'

If you want code highlighting, you should run this generator too:

rails generate extended_markdownizer:install

This will place a extended_markdownizer.css file in your public/stylesheets folder. You will have to require it manually in your layouts, or through jammit, or whatever.

Usage

In your model, let's say, Post:

class Post < ActiveRecord::Base
  extended_markdownize! :body
  # In this case we want to treat :body as markdown.
  # You can pass an options hash to the code renderer, such as:
  #
  #   extended_markdownize! :body, :line_numbers => :table
  #
end

Extended Markdownizer needs an additional field (:rendered_body), which you should generate in a migration. (If the attribute was :some_other_field, it would need :rendered_some_other_field!) All these fields should have the type :text.

You save your posts with markdown text like this:

Post.create body: """
  # My H1 title
  Markdown is awesome!
  ## Some H2 title...

  {% code ruby %}
  {% caption 'This caption will become an h5 and also a property of the enclosing div' %}
  {% highlight [1,2,3] %}  <- this will highlight lines 1, 2 and 3 (it accepts a Range as well)

    # All this code will be highlighted properly! :)
    def my_method(*my_args)
      something do
        . . .
      end
    end

  {% endcode %}
"""

And then, in your view you just have to call <%= raw @post.rendered_body %> :)

##TODO

  • Update specs
  • Improve docs

Markdown: Copyright (c) 2011 Codegram. See LICENSE for details. Extended Markdown: Copyright (c) 2011 José M. Gilgado

FAQs

Package last updated on 01 Sep 2011

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc