Class: Jekyll::PostReader
- Inherits:
-
Object
- Object
- Jekyll::PostReader
- Defined in:
- lib/jekyll-language-plugin/readers/post_reader.rb
Instance Method Summary collapse
- #create_document_from_path(path) ⇒ Object
- #multilinguify(path) ⇒ Object
- #read_content(dir, magic_dir, matcher) ⇒ Object
Instance Method Details
#create_document_from_path(path) ⇒ Object
34 35 36 37 38 39 |
# File 'lib/jekyll-language-plugin/readers/post_reader.rb', line 34 def create_document_from_path(path) LanguageDocument.new(path, { site: @site, collection: @site.posts }) end |
#multilinguify(path) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/jekyll-language-plugin/readers/post_reader.rb', line 14 def multilinguify(path) document = create_document_from_path(path) document.read if not document.language and not document.languages # create a new document that can be freshly read return [create_document_from_path(path)] end languages = document.languages || [] if document.language and not languages.include?(document.language) languages.push(document.language) end languages.map do |language| document2 = create_document_from_path(path) document2.data['language'] = language document2 end end |
#read_content(dir, magic_dir, matcher) ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/jekyll-language-plugin/readers/post_reader.rb', line 3 def read_content(dir, magic_dir, matcher) entries = @site.reader.get_entries(dir, magic_dir) documents = [] for entry in entries next unless entry =~ matcher path = @site.in_source_dir(File.join(dir, magic_dir, entry)) documents.concat(multilinguify(path)) end documents end |