Class: Genit::HtmlDocument
- Inherits:
-
Object
- Object
- Genit::HtmlDocument
- Defined in:
- lib/genit/documents/html_document.rb
Overview
Open an html file in various format.
Class Method Summary collapse
-
.build_page_content(file, working_dir) ⇒ Object
Public: Open a file as a string, taking care of fragment tags.
-
.genit_tags_from(file) ⇒ Object
Public: Get the list of <genit> tag in a document.
-
.open(file) ⇒ Object
Public: Open an entire html document.
-
.open_as_string(file) ⇒ Object
Public: Open a file as a string.
-
.open_fragment(file) ⇒ Object
Public: Open a fragment of html document.
Class Method Details
.build_page_content(file, working_dir) ⇒ Object
Public: Open a file as a string, taking care of fragment tags. All fragment tags are replaced by a new content.
file - Full path String name of a html or markdown file.
Returns a String.
52 53 54 55 56 57 58 59 |
# File 'lib/genit/documents/html_document.rb', line 52 def self.build_page_content(file, working_dir) # TODO éviter le working_dir if file.markdown_ext? BlueCloth.new(IO.read(file)).to_html else Fragment.new(file, working_dir).to_html end end |
.genit_tags_from(file) ⇒ Object
Public: Get the list of <genit> tag in a document.
file - Nokogiri::HTML or Nokogiri::XML document.
Returns Nokogiri::XML::NodeSet.
66 67 68 |
# File 'lib/genit/documents/html_document.rb', line 66 def self. file file.css "genit" end |
.open(file) ⇒ Object
Public: Open an entire html document. If the file does not contain a <bogy> tag, a doctype, etc, they will be automatically added.
file - Full path String filename.
Returns a Nokogiri::HTML document.
18 19 20 |
# File 'lib/genit/documents/html_document.rb', line 18 def self.open file Nokogiri::HTML(File.open(file)) end |
.open_as_string(file) ⇒ Object
Public: Open a file as a string.
file - Full path String name of a html or markdown file.
Returns a String.
37 38 39 40 41 42 43 44 |
# File 'lib/genit/documents/html_document.rb', line 37 def self.open_as_string file string = IO.read file if file.markdown_ext? BlueCloth.new(string).to_html else string end end |
.open_fragment(file) ⇒ Object
Public: Open a fragment of html document.
file - Full path String filename.
Returns a Nokogiri::HTML document.
27 28 29 30 |
# File 'lib/genit/documents/html_document.rb', line 27 def self.open_fragment file string = IO.read file Nokogiri::HTML.fragment string end |