Sha256: 1f47a50167996aa9bd0c0f4ad5be5eb855f874317a7628f6afe7761ea49d52da

Contents?: true

Size: 1.35 KB

Versions: 44

Compression:

Stored size: 1.35 KB

Contents

#!/usr/bin/env ruby
require 'optparse'
require 'open-uri'
require 'irb'
require 'uri'
require 'rubygems'
require 'nokogiri'

parse_class = Nokogiri
encoding = nil

opts = OptionParser.new do |opts|
  opts.banner = "Nokogiri: an HTML, XML, SAX, and Reader parser"
  opts.define_head "Usage: nokogiri <uri|path> [options]"
  opts.separator ""
  opts.separator "Examples:"
  opts.separator "  nokogiri http://www.ruby-lang.org/"
  opts.separator "  nokogiri ./public/index.html"
  opts.separator ""
  opts.separator "Options:"

  opts.on("--type [TYPE]", [:xml, :html]) do |v|
    parse_class = {:xml => Nokogiri::XML, :html => Nokogiri::HTML}[v]
  end

  opts.on("-E", "--encoding encoding", "Read as encoding (default #{encoding})") do |v|
    encoding = v
  end

  opts.on("--rng <uri|path>", "Validate using this rng file.") do |v|
    @rng = open(v) {|f| Nokogiri::XML::RelaxNG(f)}
  end

  opts.on_tail("-?", "--help", "Show this message") do
    puts opts
    exit
  end

  opts.on_tail("-v", "--version", "Show version") do
    puts Nokogiri::VersionInfo.instance.to_markdown
    exit
  end
end
opts.parse!

uri = ARGV.shift

if uri.to_s.strip.empty?
  puts opts
  exit 1
end

@doc = parse_class.parse(open(uri).read, nil, encoding)

if @rng
  @rng.validate(@doc).each do |error|
    puts error.message
  end
else
  puts "Your document is stored in @doc..."
  IRB.start
end

Version data entries

44 entries across 44 versions & 3 rubygems

Version Path
nokogiri-1.5.6.rc2 bin/nokogiri
nokogiri-1.5.6.rc2-x86-mswin32-60 bin/nokogiri
nokogiri-1.5.6.rc2-x86-mingw32 bin/nokogiri
nokogiri-1.5.6.rc2-java bin/nokogiri
nokogiri-fitzsimmons-1.5.5.3-java bin/nokogiri
nokogiri-fitzsimmons-1.5.5.3 bin/nokogiri
nokogiri-fitzsimmons-1.5.5 bin/nokogiri
nokogiri-maglev--1.5.5.20120817130721 bin/nokogiri
nokogiri-maglev--1.5.5 bin/nokogiri
nokogiri-maglev--1.5.4.20120815005250 bin/nokogiri
nokogiri-1.5.6.rc1 bin/nokogiri
nokogiri-1.5.6.rc1-java bin/nokogiri
nokogiri-1.5.5 bin/nokogiri
nokogiri-1.5.5-x86-mswin32-60 bin/nokogiri
nokogiri-1.5.5-x86-mingw32 bin/nokogiri
nokogiri-1.5.5-java bin/nokogiri
nokogiri-1.5.5.rc3 bin/nokogiri
nokogiri-1.5.5.rc3-x86-mswin32-60 bin/nokogiri
nokogiri-1.5.5.rc3-x86-mingw32 bin/nokogiri
nokogiri-1.5.5.rc3-java bin/nokogiri