Redcloth with CodeRay
Adds CodeRay syntax highlighting support to RedCloth, with a ‘source’ tag. See the examples below.
A short summary of what you can do:
-
<source>foo</source> - Use this tag to produce CodeRay highlighted HTML for the contents within that tag. The language defaults to Ruby.
-
<source:css>foo</source> - Highlight as usual, but highlight as CSS. Supports everything CodeRay supports. Refer to the CodeRay documentation for a list of supported languages.
-
You can also use the <code> tag.
Installing
Installation as usual:
sudo gem install redclothcoderay
You can also install the gem via github, to get the latest HEAD.
sudo gem install augustl-redclothcoderay --source=http://gems.github.com/
Using
A short example.
require 'rubygems'
require 'redcloth'
require 'coderay'
require 'redclothcoderay'
RedCloth.new('I am *bold* and <source>@hi_tech</source>').to_html
You can specify the CodeRay options, too (defaults to RedclothCoderay::CODERAY_OPTIONS).
RedclothCoderay. :line_numbers => :table
Example
This input:
Hello, this is *textilized*. It also has <source>@inline_code_examples</source>!
What about a multi-line code sample?
<source:html>
<h1>Hello, world!</h1>
</source>
produces this output (indented for clarity):
<p>Hello, this is <strong>textilized</strong>. It also has <code class="inline_code">
<span class="iv">@inline_code_examples</span>
</code>!</p>
<p>What about a multi-line code sample?</p>
<pre><code class=\"multiline_code\">
<span class=\"ta\">&lt;h1&gt;</span>Hello, world!<span class=\"ta\">&lt;/h1&gt;</span>
</code></pre>