Sha256: 3c9e5cc7bda11b44208b62ce43b62257eefe596244c48d950b78561825e501ec

Contents?: true

Size: 885 Bytes

Versions: 6

Compression:

Stored size: 885 Bytes

Contents

# Frozen-string-literal: true
# Encoding: utf-8

module Jekyll
  class LanguagePostReader < PostReader
    alias_method :read_content_orig, :read_content

    def read_content(dir, magic_dir, matcher)
      read_content_orig(dir, magic_dir, matcher).flat_map do |document|
        ldocument = LanguageDocument.new(document.path, { site: @site, collection: @site.posts })
        ldocument.read

        languages = ldocument.languages.is_a?(Enumerable) ? ldocument.languages : []
        languages.push(ldocument.language) if ldocument.language && !languages.include?(ldocument.language)
        return [document] if languages.size == 0

        languages.map do |language|
          ldocument2 = LanguageDocument.new(document.path, { site: @site, collection: @site.posts })
          ldocument2.data['language'] = language
          ldocument2
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
jekyll-language-plugin-1.3.5 lib/jekyll/readers/language_post_reader.rb
jekyll-language-plugin-1.3.4 lib/jekyll/readers/language_post_reader.rb
jekyll-language-plugin-1.3.3 lib/jekyll/readers/language_post_reader.rb
jekyll-language-plugin-1.3.2 lib/jekyll/readers/language_post_reader.rb
jekyll-language-plugin-1.3.1 lib/jekyll/readers/language_post_reader.rb
jekyll-language-plugin-1.3.0 lib/jekyll/readers/language_post_reader.rb