regru / ultraviolet

Updated version of the ultraviolet library for 1.8 and 1.9

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ultraviolet is a html syntax highlighting library.
It uses Textpow to supports more than 60 programming languages.

INSTALL

gem install ultraviolet

Ruby 1.8: Install onigumura

Usage

Commandline interface

uv -l syntax # Listing available syntaxes:
uv -l themes # Listing available themes:
uv lib/uv.rb # Letting to guess the parameters
uv -s yaml -t espresso_libre syntax/ini.syntax Specifying a syntax and a theme

# Output results to `index.html` and copy required files (/eg/ css):
uv -c . syntax/ini.syntax > index.html

# Producing output in latex and converting to pdf:
uv -h -o latex lib/uv.rb > uv.tex
pdflatex uv.tex

Ruby interface

# List of available syntaxes
puts Uv.syntaxes.join( ", " )

# Listing available themes
puts Uv.themes.join( ", " )

# Parsing a css string. Produce xhtml output, with line numbers using amy theme
result = Uv.parse( text, "xhtml", "css", true, "amy")

# Output copy required files for `xhtml` format to directory `site`
Uv.copy_files "xhtml", "site"

Examples

TODO

  • less crazy Uv.parse interface -> options hash
  • replace them gallery example with some nice example code

Maintainer info

Updating demo

cd _pages
bundle exec ruby generate.rb
bundle exec rackup

open http://localhost:9292

Updating theme files

Currently only XHTML is "officially" supported by ultraviolet, nevertheless, experimental latex output support already exists and other output formats can be included in the future. This is important because theme conversion is format dependent. For xhmtl, the command is theme2xhtmlrender as shown in the following example.

theme2xhtmlrender Amy.tmTheme

For latex, the command theme2latexrender is used instead.

theme2latexrender Amy.tmTheme

Authors

Original author Dizan Vasquez.

Michael Grosser
michael@grosser.it
License: MIT
Build Status

About

Updated version of the ultraviolet library for 1.8 and 1.9


Languages

Language:Ruby 100.0%