Class: Jekyll::StandardSite::WellKnownGenerator

Inherits:
Generator
  • Object
show all
Defined in:
lib/jekyll-standard-site.rb

Instance Method Summary collapse

Instance Method Details

#generate(site) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/jekyll-standard-site.rb', line 20

def generate(site)
  uri = StandardSite.publication_uri(site)
  return unless uri

  unless uri =~ StandardSite::AT_URI_PATTERN
    Jekyll.logger.warn "Standard.site:", "publication is not a valid AT-URI: #{uri}"
    return
  end

  path = StandardSite.config(site)["publication_path"]
  dir = ".well-known"
  name = "site.standard.publication"
  if path && !path.empty?
    dir = File.join(".well-known", "site.standard.publication", path.sub(%r{\A/}, ""))
    name = File.basename(dir)
    dir = File.dirname(dir)
  end

  file = Jekyll::PageWithoutAFile.new(site, site.source, dir, name)
  file.content = uri
  file.data["layout"] = nil
  file.data["sitemap"] = false
  site.pages << file
end