Class: Rouge::Formatters::HTML
- Inherits:
-
Rouge::Formatter
- Object
- Rouge::Formatter
- Rouge::Formatters::HTML
- Defined in:
- lib/rouge/formatters/html.rb
Overview
Transforms a token stream into HTML output.
Constant Summary
Constants inherited from Rouge::Formatter
Instance Method Summary collapse
-
#initialize(opts = {}) ⇒ HTML
constructor
Initialize with options.
- #stream(tokens) { ... } ⇒ Object
Methods inherited from Rouge::Formatter
find, format, #format, #render, tag
Constructor Details
#initialize(opts = {}) ⇒ HTML
Initialize with options.
If ‘:inline_theme` is given, then instead of rendering the tokens as <span> tags with CSS classes, the styles according to the given theme will be inlined in “style” attributes. This is useful for formats in which stylesheets are not available.
Content will be wrapped in a tag (‘div` if tableized, `pre` if not) with the given `:css_class` unless `:wrap` is set to `false`.
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/rouge/formatters/html.rb', line 26 def initialize(opts={}) @css_class = opts.fetch(:css_class, 'highlight') @css_class = " class=#{@css_class.inspect}" if @css_class @line_numbers = opts.fetch(:line_numbers, false) @start_line = opts.fetch(:start_line, 1) @inline_theme = opts.fetch(:inline_theme, nil) @inline_theme = Theme.find(@inline_theme).new if @inline_theme.is_a? String @wrap = opts.fetch(:wrap, true) end |
Instance Method Details
#stream(tokens) { ... } ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/rouge/formatters/html.rb', line 39 def stream(tokens, &b) if @line_numbers stream_tableized(tokens, &b) else stream_untableized(tokens, &b) end end |