VOOZH about

URL: http://coderay.rubychan.de

⇱ CodeRay


👁 CodeRay logo
1.1.2

Try it!

paste to highlight

Download

Source | Bugtracker

Documentation

in autumnal colors

👁 Why

Old website
👁 Fork me on GitHub
👁 Ruby-chan

Fast and easy syntax highlighting for selected languages.

Features

input languages

  • C, C++
  • Clojure (new)
  • CSS
  • Delphi
  • diff
  • ERB
  • Go
  • Groovy
  • HAML (new)
  • HTML
  • Java
  • JavaScript
  • JSON
  • Lua
  • PHP
  • Python
  • Ruby
  • Sass
  • SQL
  • Taskpaper
  • XML
  • YAML

output formats

  • HTML snippet (inline styles)
  • HTML page (CSS classes)
  • Terminal (16 colors)
  • JSON
  • YAML
  • Ruby Array (Tokens)

tools

  • coderay executable
  • LoC counter (beta)

license

basic features

  • fast: 1 MB/s!
  • smart: doesn't choke on crazy code
  • safe: handles bogus input gracefully
  • pure Ruby implementation
  • no dependencies
  • plugin system
  • line numbers
  • nested languages
  • encoding-aware (Ruby 1.9+)
  • extensive test suite

supported platforms

  • MRI 1.8.7
  • MRI 1.9.3
  • MRI 2.0+
  • JRuby 1.7
  • Rubinius 2.0

The latest stable version is 1.1.2. More features are planned for 1.2.

Usage & Live Demo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# output as HTML div (using inline CSS styles)CodeRay.scan('puts "Hello, world!"',:ruby).div# ...with line numbersCodeRay.scan("5.times do\n puts 'Hello, world!'\nend",:ruby).div(:line_numbers=>:table)# output as standalone HTML page (using CSS classes)CodeRay.scan('puts "Hello, world!"',:ruby).page# keep scanned tokens for later usetokens=CodeRay.scan('{ "just": "an", "example": 42 }',:json)# produce a token statistictokens.statistic# count LoC (lines of code)CodeRay.scan("# comment\nputs 'Hello, world!'",:ruby).loc# => 1# produce a HTML div, but with CSS classestokens.div(:css=>:class)# highlight a file (to HTML div); guess the file type base on the extensionCodeRay.highlight_file(__FILE__)# re-using scanner and encoder with DuoCodeRay::Duo[:ruby,:div].encode('puts "Hello, world!"')

More documentation is also available.

author: -- powered by Ruby on Rails with CodeRay