diff --git a/lib/jekyll/reader.rb b/lib/jekyll/reader.rb index d8f6eac4..86edde60 100644 --- a/lib/jekyll/reader.rb +++ b/lib/jekyll/reader.rb @@ -73,5 +73,11 @@ module Jekyll SafeYAML.load_file(path) end end + + def sanitize_filename(name) + name.gsub!(/[^\w\s_-]+/, '') + name.gsub!(/(^|\b\s)\s+($|\s?\b)/, '\\1\\2') + name.gsub(/\s+/, '_') + end end end \ No newline at end of file diff --git a/lib/jekyll/site.rb b/lib/jekyll/site.rb index ff964d7e..f708f095 100644 --- a/lib/jekyll/site.rb +++ b/lib/jekyll/site.rb @@ -232,7 +232,7 @@ module Jekyll path = reader.in_source_dir(dir, entry) next if File.symlink?(path) && safe - key = sanitize_filename(File.basename(entry, '.*')) + key = reader.sanitize_filename(File.basename(entry, '.*')) if File.directory?(path) read_data_to(path, data[key] = {}) else @@ -464,11 +464,5 @@ module Jekyll def site_cleaner @site_cleaner ||= Cleaner.new(self) end - - def sanitize_filename(name) - name.gsub!(/[^\w\s_-]+/, '') - name.gsub!(/(^|\b\s)\s+($|\s?\b)/, '\\1\\2') - name.gsub(/\s+/, '_') - end end end