Module: HtmlBeautifier

Defined in:
lib/htmlbeautifier/version.rb,
lib/htmlbeautifier.rb,
lib/htmlbeautifier/parser.rb,
lib/htmlbeautifier/builder.rb,
lib/htmlbeautifier/html_parser.rb,
lib/htmlbeautifier/ruby_indenter.rb

Overview

:nodoc:

Defined Under Namespace

Modules: VERSION Classes: Builder, HtmlParser, Parser, RubyIndenter

Class Method Summary collapse

Class Method Details

.beautify(html, options = {}) ⇒ Object

Returns a beautified HTML/HTML+ERB document as a String. html must be an object that responds to #to_s.

Available options are: tab_stops - an integer for the number of spaces to indent, default 2. Deprecated: see indent. indent - what to indent with (“ ”, “t” etc.), default “ ” stop_on_errors - raise an exception on a badly-formed document. Default is false, i.e. continue to process the rest of the document. initial_level - The entire output will be indented by this number of steps. Default is 0. keep_blank_lines - an integer for the number of consecutive empty lines to keep in output.


23
24
25
26
27
28
29
30
# File 'lib/htmlbeautifier.rb', line 23

def self.beautify(html, options = {})
  if options[:tab_stops]
    options[:indent] = " " * options[:tab_stops]
  end
  String.new.tap { |output|
    HtmlParser.new.scan html.to_s, Builder.new(output, options)
  }
end