Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Get that restaurant github flavor at home in your editor.

branch: master
README.md

Docter

Get that restaurant github flavor at home in your editor.

Screenshot

Uses github's own redcarpet library to provide accurate markdown previews in your local editor. This screenshot shows Marked using docter as the markdown processor.

Changes

2012-01-17

  • Updated styles to match new GitHub styles
  • Updated gfm wrapper for Redcarpet 2
  • Removed nokigiri and albino dependencies
  • Using pygments.rb wrapper instead

GitHub Flavored Markdown Extensions Supported:

  • Fenced codeblocks

    var awesome = new BadassClass (param) {
        return "string"
    }
    
  • Strikethru support
  • Syntax highlighting via pygments

    require 'redcarpet'
    def markdown(text)
      options = [:fenced_code,:generate_toc,:hard_wrap,:no_intraemphasis,:strikethrough,:gh_blockcode,:autolink,:xhtml,:tables]
      html = Redcarpet.new(text, *options).to_html 
      syntax_highlighter(html)
    end
    
  • www.auto-linking.com

  • table support

    First Header Second Header
    Content Cell Content Cell
    Content Cell Content Cell

Why NodeJS and not ruby?

I have future plans for this in a node project. And because it's my party.

Requirements

Lots. Ungodly heaps of requirements.

  • NodeJS and NPM if you plan on using the node wrapper.
  • Ruby & Rubygems
  • Various gems

    $ gem install redcarpet pygments.rb
    

Usage

  1. Clone this repo locally
  2. cd to the repo
  3. [sudo] npm -g install

This will install the package into your global node_modules dir (usually /usr/local/lib/node_modules). It will also symbolically link two executables into your path:

  1. docter: the nodejs wrapper.
  2. gfm: the ruby redcarpet/pygments wrapper.

Both of these executables take markdown input through STDIN and output formatted HTML on STDOUT.

Using with Marked.app

  1. Set the markdown processor to either of the linked executables. If you don't plan on doing anything with the node wrapper, I would suggest using the straight ruby wrapper (gfm).
  2. Optionally, add the ghf_marked.css (in this repo) to Marked's custom CSS list.

Other styles

Uncomment the doc_header() function in github-flavored-markdown.rb and include any of the built-in styles from pygments. Replace :style => 'vs' with one of the styles in the comment block.

Outputting the emacs style to the document header:

class HTMLwithPygments < Redcarpet::Render::XHTML
    def doc_header()
        '<style>' + Pygments.css('.highlight',:style => 'emacs') + '</style>'
    end
    def block_code(code, language)
        Pygments.highlight(code, :lexer => language, :options => {:encoding => 'utf-8'})
    end
end
Something went wrong with that request. Please try again.