Top Level Namespace
- Includes:
- Process
Defined Under Namespace
Modules: Jekyll
Instance Method Summary collapse
Instance Method Details
#hook_coordinate(site) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/jekyll/polyglot/hooks/coordinate.rb', line 7 def hook_coordinate(site) # Copy the language specific data, by recursively merging it with the default data. # Favour active_lang first, then default_lang, then any non-language-specific data. # See: https://www.ruby-forum.com/topic/142809 merger = proc { |key, v1, v2| Hash === v1 && Hash === v2 ? v1.merge(v2, &merger) : v2 } if site.data.include?(site.default_lang) site.data = site.data.merge(site.data[site.default_lang], &merger) end if site.data.include?(site.active_lang) site.data = site.data.merge(site.data[site.active_lang], &merger) end site.collections.each do |_, collection| collection.docs = site.coordinate_documents(collection.docs) end site.pages = site.coordinate_documents(site.pages) end |
#hook_process(site) ⇒ Object
6 7 8 9 10 11 |
# File 'lib/jekyll/polyglot/hooks/process.rb', line 6 def hook_process(site) site.collections.each do |_, collection| site.process_documents(collection.docs) end site.process_documents(site.pages) end |