diff --git a/.rubocop.yml b/.rubocop.yml index 61ef85ef..f3aae6fe 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -12,11 +12,6 @@ AllCops: - lib/jekyll/document.rb - lib/jekyll/filters.rb - lib/jekyll/frontmatter_defaults.rb - - lib/jekyll/reader.rb - - lib/jekyll/readers/layout_reader.rb - - lib/jekyll/readers/page_reader.rb - - lib/jekyll/readers/post_reader.rb - - lib/jekyll/readers/static_file_reader.rb - lib/jekyll/regenerator.rb - lib/jekyll/renderer.rb - lib/jekyll/site.rb diff --git a/lib/jekyll/reader.rb b/lib/jekyll/reader.rb index c9ded560..abbe923f 100644 --- a/lib/jekyll/reader.rb +++ b/lib/jekyll/reader.rb @@ -1,5 +1,5 @@ # encoding: UTF-8 -require 'csv' +require "csv" module Jekyll class Reader @@ -16,7 +16,7 @@ module Jekyll @site.layouts = LayoutReader.new(site).read read_directories sort_files! - @site.data = DataReader.new(site).read(site.config['data_dir']) + @site.data = DataReader.new(site).read(site.config["data_dir"]) CollectionReader.new(site).read end @@ -34,13 +34,15 @@ module Jekyll # dir - The String relative path of the directory to read. Default: ''. # # Returns nothing. - def read_directories(dir = '') + def read_directories(dir = "") base = site.in_source_dir(dir) - dot = Dir.chdir(base) { filter_entries(Dir.entries('.'), base) } + dot = Dir.chdir(base) { filter_entries(Dir.entries("."), base) } dot_dirs = dot.select { |file| File.directory?(@site.in_source_dir(base, file)) } dot_files = (dot - dot_dirs) - dot_pages = dot_files.select { |file| Utils.has_yaml_header?(@site.in_source_dir(base, file)) } + dot_pages = dot_files.select do |file| + Utils.has_yaml_header?(@site.in_source_dir(base, file)) + end dot_static_files = dot_files - dot_pages retrieve_posts(dir) @@ -71,7 +73,9 @@ module Jekyll dot_dirs.map do |file| dir_path = site.in_source_dir(dir, file) rel_path = File.join(dir, file) - @site.reader.read_directories(rel_path) unless @site.dest.sub(/\/$/, '') == dir_path + unless @site.dest.sub(%r!/$!, "") == dir_path + @site.reader.read_directories(rel_path) + end end end @@ -119,7 +123,7 @@ module Jekyll def get_entries(dir, subfolder) base = site.in_source_dir(dir, subfolder) return [] unless File.exist?(base) - entries = Dir.chdir(base) { filter_entries(Dir['**/*'], base) } + entries = Dir.chdir(base) { filter_entries(Dir["**/*"], base) } entries.delete_if { |e| File.directory?(site.in_source_dir(base, e)) } end end diff --git a/lib/jekyll/readers/layout_reader.rb b/lib/jekyll/readers/layout_reader.rb index df8931cb..985491c6 100644 --- a/lib/jekyll/readers/layout_reader.rb +++ b/lib/jekyll/readers/layout_reader.rb @@ -8,11 +8,13 @@ module Jekyll def read layout_entries.each do |layout_file| - @layouts[layout_name(layout_file)] = Layout.new(site, layout_directory, layout_file) + @layouts[layout_name(layout_file)] = \ + Layout.new(site, layout_directory, layout_file) end theme_layout_entries.each do |layout_file| - @layouts[layout_name(layout_file)] ||= Layout.new(site, theme_layout_directory, layout_file) + @layouts[layout_name(layout_file)] ||= \ + Layout.new(site, theme_layout_directory, layout_file) end @layouts @@ -39,7 +41,7 @@ module Jekyll def entries_in(dir) entries = [] within(dir) do - entries = EntryFilter.new(site).filter(Dir['**/*.*']) + entries = EntryFilter.new(site).filter(Dir["**/*.*"]) end entries end @@ -54,15 +56,13 @@ module Jekyll end def layout_directory_inside_source - site.in_source_dir(site.config['layouts_dir']) + site.in_source_dir(site.config["layouts_dir"]) end def layout_directory_in_cwd - dir = Jekyll.sanitized_path(Dir.pwd, site.config['layouts_dir']) + dir = Jekyll.sanitized_path(Dir.pwd, site.config["layouts_dir"]) if File.directory?(dir) && !site.safe dir - else - nil end end end diff --git a/lib/jekyll/readers/page_reader.rb b/lib/jekyll/readers/page_reader.rb index 97748c01..507c609e 100644 --- a/lib/jekyll/readers/page_reader.rb +++ b/lib/jekyll/readers/page_reader.rb @@ -14,7 +14,9 @@ module Jekyll # # Returns an array of static pages. def read(files) - files.map { |page| @unfiltered_content << Page.new(@site, @site.source, @dir, page) } + files.map do |page| + @unfiltered_content << Page.new(@site, @site.source, @dir, page) + end @unfiltered_content.select { |page| site.publisher.publish?(page) } end end diff --git a/lib/jekyll/readers/post_reader.rb b/lib/jekyll/readers/post_reader.rb index f7a44ca7..123709e7 100644 --- a/lib/jekyll/readers/post_reader.rb +++ b/lib/jekyll/readers/post_reader.rb @@ -12,7 +12,7 @@ module Jekyll # # Returns nothing. def read_drafts(dir) - read_publishable(dir, '_drafts', Document::DATELESS_FILENAME_MATCHER) + read_publishable(dir, "_drafts", Document::DATELESS_FILENAME_MATCHER) end # Read all the files in //_posts and create a new Document @@ -22,7 +22,7 @@ module Jekyll # # Returns nothing. def read_posts(dir) - read_publishable(dir, '_posts', Document::DATE_FILENAME_MATCHER) + read_publishable(dir, "_posts", Document::DATE_FILENAME_MATCHER) end # Read all the files in // and create a new @@ -32,15 +32,14 @@ module Jekyll # # Returns nothing. def read_publishable(dir, magic_dir, matcher) - read_content(dir, magic_dir, matcher).tap do |docs| - docs.each(&:read) - end.select do |doc| - site.publisher.publish?(doc).tap do |will_publish| - if !will_publish && site.publisher.hidden_in_the_future?(doc) - Jekyll.logger.debug "Skipping:", "#{doc.relative_path} has a future date" + read_content(dir, magic_dir, matcher).tap { |docs| docs.each(&:read) } + .select do |doc| + site.publisher.publish?(doc).tap do |will_publish| + if !will_publish && site.publisher.hidden_in_the_future?(doc) + Jekyll.logger.debug "Skipping:", "#{doc.relative_path} has a future date" + end end end - end end # Read all the content files from //magic_dir @@ -57,7 +56,7 @@ module Jekyll next unless entry =~ matcher path = @site.in_source_dir(File.join(dir, magic_dir, entry)) Document.new(path, { - :site => @site, + :site => @site, :collection => @site.posts }) end.reject(&:nil?) diff --git a/lib/jekyll/readers/static_file_reader.rb b/lib/jekyll/readers/static_file_reader.rb index 8def1365..1d43d69c 100644 --- a/lib/jekyll/readers/static_file_reader.rb +++ b/lib/jekyll/readers/static_file_reader.rb @@ -14,7 +14,9 @@ module Jekyll # # Returns an array of static files. def read(files) - files.map { |file| @unfiltered_content << StaticFile.new(@site, @site.source, @dir, file) } + files.map do |file| + @unfiltered_content << StaticFile.new(@site, @site.source, @dir, file) + end @unfiltered_content end end