class JekyllInfo::Generator
Constants
- MINIFY_REGEX
Matches all whitespace that follows
1. A '>', which closes an XML tag or 2. A '}', which closes a Liquid tag
We will strip all of this whitespace to minify the template
Public Instance Methods
generate(site)
click to toggle source
Main plugin action, called by Jekyll-core
# File lib/jekyll-info/generator.rb, line 9 def generate(site) @site = site return if file_exists?(template_path) @site.pages << content_for_file(template_path, template_source_path) end
Private Instance Methods
content_for_file(file_path, file_source_path)
click to toggle source
Generates contents for a file
# File lib/jekyll-info/generator.rb, line 47 def content_for_file(file_path, file_source_path) file = PageWithoutAFile.new(@site, __dir__, "", file_path) file.content = File.read(file_source_path).gsub(MINIFY_REGEX, "") file.data["layout"] = nil file.data["sitemap"] = false file.output file end
file_exists?(file_path)
click to toggle source
Checks if a file already exists in the site source
# File lib/jekyll-info/generator.rb, line 38 def file_exists?(file_path) if @site.respond_to?(:in_source_dir) File.exist? @site.in_source_dir(file_path) else File.exist? Jekyll.sanitized_path(@site.source, file_path) end end
template_path()
click to toggle source
Path to jekyll-info from config, or jekyll-info.html for default
# File lib/jekyll-info/generator.rb, line 24 def template_path if @site.config["info"] && @site.config["info"]["path"] @site.config["info"]["path"] else "jekyll-info.html" end end
template_source_path()
click to toggle source
Path to jekyll-info.html template file
# File lib/jekyll-info/generator.rb, line 33 def template_source_path File.expand_path "jekyll-info.html", __dir__ end