Merge branch 'include' of https://github.com/lukebayes/jekyll into lukebayes-include

Conflicts:
	lib/jekyll.rb
	lib/jekyll/site.rb
This commit is contained in:
Tom Preston-Werner 2012-01-14 19:48:04 -08:00
commit 89180169a4
4 changed files with 19 additions and 5 deletions

View File

@ -1,3 +1,7 @@
== HEAD
* Minor Enhancements
* Add ability to explicitly specify included files (#261)
== 0.11.2 / 2011-12-27 == 0.11.2 / 2011-12-27
* Bug Fixes * Bug Fixes
* Fix gemspec * Fix gemspec

View File

@ -65,7 +65,8 @@ module Jekyll
'pygments' => false, 'pygments' => false,
'markdown' => 'maruku', 'markdown' => 'maruku',
'permalink' => 'date', 'permalink' => 'date',
'include' => ['.htaccess'],
'markdown_ext' => 'markdown,mkd,mkdn,md', 'markdown_ext' => 'markdown,mkd,mkdn,md',
'textile_ext' => 'textile', 'textile_ext' => 'textile',

View File

@ -4,7 +4,7 @@ module Jekyll
class Site class Site
attr_accessor :config, :layouts, :posts, :pages, :static_files, attr_accessor :config, :layouts, :posts, :pages, :static_files,
:categories, :exclude, :source, :dest, :lsi, :pygments, :categories, :exclude, :include, :source, :dest, :lsi, :pygments,
:permalink_style, :tags, :time, :future, :safe, :plugins, :limit_posts :permalink_style, :tags, :time, :future, :safe, :plugins, :limit_posts
attr_accessor :converters, :generators attr_accessor :converters, :generators
@ -23,6 +23,7 @@ module Jekyll
self.pygments = config['pygments'] self.pygments = config['pygments']
self.permalink_style = config['permalink'].to_sym self.permalink_style = config['permalink'].to_sym
self.exclude = config['exclude'] || [] self.exclude = config['exclude'] || []
self.include = config['include'] || []
self.future = config['future'] self.future = config['future']
self.limit_posts = config['limit_posts'] || nil self.limit_posts = config['limit_posts'] || nil
@ -305,7 +306,7 @@ module Jekyll
# Returns the Array of filtered entries. # Returns the Array of filtered entries.
def filter_entries(entries) def filter_entries(entries)
entries = entries.reject do |e| entries = entries.reject do |e|
unless ['.htaccess'].include?(e) unless self.include.include?(e)
['.', '_', '#'].include?(e[0..0]) || ['.', '_', '#'].include?(e[0..0]) ||
e[-1..-1] == '~' || e[-1..-1] == '~' ||
self.exclude.include?(e) || self.exclude.include?(e) ||

View File

@ -126,12 +126,20 @@ class TestSite < Test::Unit::TestCase
should "filter entries with exclude" do should "filter entries with exclude" do
excludes = %w[README TODO] excludes = %w[README TODO]
includes = %w[index.html site.css] files = %w[index.html site.css .htaccess]
@site.exclude = excludes @site.exclude = excludes
assert_equal includes, @site.filter_entries(excludes + includes) assert_equal files, @site.filter_entries(excludes + files)
end end
should "not filter entries within include" do
includes = %w[_index.html .htaccess]
files = %w[index.html _index.html .htaccess]
@site.include = includes
assert_equal files, @site.filter_entries(files)
end
context 'with orphaned files in destination' do context 'with orphaned files in destination' do
setup do setup do
clear_dest clear_dest