jekyll 2.2.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of jekyll might be problematic. Click here for more details.

Files changed (306) hide show
  1. checksums.yaml +4 -4
  2. data/README.markdown +1 -1
  3. data/lib/jekyll.rb +0 -1
  4. data/lib/jekyll/collection.rb +18 -3
  5. data/lib/jekyll/command.rb +0 -25
  6. data/lib/jekyll/commands/build.rb +7 -2
  7. data/lib/jekyll/commands/help.rb +33 -0
  8. data/lib/jekyll/configuration.rb +36 -28
  9. data/lib/jekyll/converters/markdown/kramdown_parser.rb +1 -1
  10. data/lib/jekyll/convertible.rb +43 -20
  11. data/lib/jekyll/deprecator.rb +15 -8
  12. data/lib/jekyll/document.rb +21 -4
  13. data/lib/jekyll/filters.rb +27 -1
  14. data/lib/jekyll/frontmatter_defaults.rb +46 -12
  15. data/lib/jekyll/plugin.rb +10 -1
  16. data/lib/jekyll/post.rb +6 -13
  17. data/lib/jekyll/related_posts.rb +2 -2
  18. data/lib/jekyll/renderer.rb +7 -2
  19. data/lib/jekyll/site.rb +5 -7
  20. data/lib/jekyll/static_file.rb +24 -4
  21. data/lib/jekyll/tags/include.rb +3 -1
  22. data/lib/jekyll/tags/post_url.rb +2 -2
  23. data/lib/jekyll/utils.rb +88 -69
  24. data/lib/jekyll/version.rb +1 -1
  25. data/lib/site_template/_config.yml +6 -4
  26. data/lib/site_template/_includes/footer.html +43 -49
  27. data/lib/site_template/_includes/head.html +3 -4
  28. data/lib/site_template/_includes/header.html +9 -10
  29. data/lib/site_template/_layouts/default.html +6 -5
  30. data/lib/site_template/_layouts/page.html +3 -3
  31. data/lib/site_template/_layouts/post.html +4 -4
  32. data/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb +6 -5
  33. data/lib/site_template/_sass/_base.scss +203 -0
  34. data/lib/site_template/_sass/_layout.scss +236 -0
  35. data/lib/site_template/_sass/_syntax-highlighting.scss +67 -0
  36. data/lib/site_template/css/main.scss +49 -0
  37. data/lib/site_template/feed.xml +1 -1
  38. data/lib/site_template/index.html +7 -4
  39. metadata +24 -431
  40. data/.gitignore +0 -15
  41. data/.travis.yml +0 -27
  42. data/CONTRIBUTING.markdown +0 -91
  43. data/Gemfile +0 -2
  44. data/History.markdown +0 -1310
  45. data/Rakefile +0 -268
  46. data/cucumber.yml +0 -3
  47. data/docs/jp/CONTRIBUTING.jp.markdown +0 -93
  48. data/docs/jp/README.jp.markdown +0 -68
  49. data/features/collections.feature +0 -145
  50. data/features/create_sites.feature +0 -158
  51. data/features/data.feature +0 -105
  52. data/features/drafts.feature +0 -46
  53. data/features/embed_filters.feature +0 -107
  54. data/features/frontmatter_defaults.feature +0 -136
  55. data/features/include_tag.feature +0 -68
  56. data/features/markdown.feature +0 -67
  57. data/features/pagination.feature +0 -82
  58. data/features/permalinks.feature +0 -85
  59. data/features/post_data.feature +0 -261
  60. data/features/post_excerpts.feature +0 -50
  61. data/features/rendering.feature +0 -34
  62. data/features/site_configuration.feature +0 -283
  63. data/features/site_data.feature +0 -107
  64. data/features/step_definitions/jekyll_steps.rb +0 -201
  65. data/features/support/env.rb +0 -65
  66. data/jekyll.gemspec +0 -66
  67. data/lib/site_template/css/main.css +0 -410
  68. data/script/bootstrap +0 -4
  69. data/script/branding +0 -11
  70. data/script/cibuild +0 -7
  71. data/script/console +0 -38
  72. data/script/proof +0 -22
  73. data/script/rebund +0 -140
  74. data/script/test +0 -17
  75. data/site/.gitignore +0 -4
  76. data/site/CNAME +0 -1
  77. data/site/README +0 -1
  78. data/site/_config.yml +0 -9
  79. data/site/_data/docs.yml +0 -46
  80. data/site/_includes/analytics.html +0 -30
  81. data/site/_includes/anchor_links.html +0 -32
  82. data/site/_includes/css/font-awesome.css +0 -44
  83. data/site/_includes/css/gridism.css +0 -110
  84. data/site/_includes/css/normalize.css +0 -1
  85. data/site/_includes/css/pygments.css +0 -72
  86. data/site/_includes/css/style.css +0 -1045
  87. data/site/_includes/docs_contents.html +0 -8
  88. data/site/_includes/docs_contents_mobile.html +0 -10
  89. data/site/_includes/docs_option.html +0 -11
  90. data/site/_includes/docs_ul.html +0 -20
  91. data/site/_includes/footer.html +0 -15
  92. data/site/_includes/header.html +0 -18
  93. data/site/_includes/news_contents.html +0 -33
  94. data/site/_includes/news_contents_mobile.html +0 -11
  95. data/site/_includes/news_item.html +0 -24
  96. data/site/_includes/primary-nav-items.html +0 -17
  97. data/site/_includes/section_nav.html +0 -22
  98. data/site/_includes/top.html +0 -17
  99. data/site/_layouts/default.html +0 -13
  100. data/site/_layouts/docs.html +0 -23
  101. data/site/_layouts/news.html +0 -19
  102. data/site/_layouts/news_item.html +0 -27
  103. data/site/_posts/2013-05-06-jekyll-1-0-0-released.markdown +0 -23
  104. data/site/_posts/2013-05-08-jekyll-1-0-1-released.markdown +0 -27
  105. data/site/_posts/2013-05-12-jekyll-1-0-2-released.markdown +0 -28
  106. data/site/_posts/2013-06-07-jekyll-1-0-3-released.markdown +0 -25
  107. data/site/_posts/2013-07-14-jekyll-1-1-0-released.markdown +0 -27
  108. data/site/_posts/2013-07-24-jekyll-1-1-1-released.markdown +0 -31
  109. data/site/_posts/2013-07-25-jekyll-1-0-4-released.markdown +0 -20
  110. data/site/_posts/2013-07-25-jekyll-1-1-2-released.markdown +0 -20
  111. data/site/_posts/2013-09-06-jekyll-1-2-0-released.markdown +0 -23
  112. data/site/_posts/2013-09-14-jekyll-1-2-1-released.markdown +0 -19
  113. data/site/_posts/2013-10-28-jekyll-1-3-0-rc1-released.markdown +0 -19
  114. data/site/_posts/2013-11-04-jekyll-1-3-0-released.markdown +0 -43
  115. data/site/_posts/2013-11-26-jekyll-1-3-1-released.markdown +0 -21
  116. data/site/_posts/2013-12-07-jekyll-1-4-0-released.markdown +0 -30
  117. data/site/_posts/2013-12-09-jekyll-1-4-1-released.markdown +0 -20
  118. data/site/_posts/2013-12-16-jekyll-1-4-2-released.markdown +0 -18
  119. data/site/_posts/2014-01-13-jekyll-1-4-3-released.markdown +0 -26
  120. data/site/_posts/2014-03-24-jekyll-1-5-0-released.markdown +0 -19
  121. data/site/_posts/2014-03-27-jekyll-1-5-1-released.markdown +0 -26
  122. data/site/_posts/2014-05-06-jekyll-turns-2-0-0.markdown +0 -31
  123. data/site/_posts/2014-05-08-jekyll-2-0-3-released.markdown +0 -18
  124. data/site/_posts/2014-06-04-jekyll-stickers-1-dollar-stickermule.markdown +0 -19
  125. data/site/_posts/2014-06-28-jekyll-turns-21-i-mean-2-1-0.markdown +0 -31
  126. data/site/_posts/2014-07-01-jekyll-2-1-1-released.markdown +0 -30
  127. data/site/_posts/2014-07-29-jekyll-2-2-0-released.markdown +0 -19
  128. data/site/css/screen.css +0 -31
  129. data/site/docs/assets.md +0 -66
  130. data/site/docs/collections.md +0 -259
  131. data/site/docs/configuration.md +0 -536
  132. data/site/docs/continuous-integration.md +0 -177
  133. data/site/docs/contributing.md +0 -133
  134. data/site/docs/datafiles.md +0 -108
  135. data/site/docs/deployment-methods.md +0 -127
  136. data/site/docs/drafts.md +0 -21
  137. data/site/docs/extras.md +0 -18
  138. data/site/docs/frontmatter.md +0 -191
  139. data/site/docs/github-pages.md +0 -91
  140. data/site/docs/history.md +0 -1514
  141. data/site/docs/index.md +0 -58
  142. data/site/docs/installation.md +0 -106
  143. data/site/docs/migrations.md +0 -11
  144. data/site/docs/pages.md +0 -86
  145. data/site/docs/pagination.md +0 -212
  146. data/site/docs/permalinks.md +0 -188
  147. data/site/docs/plugins.md +0 -561
  148. data/site/docs/posts.md +0 -211
  149. data/site/docs/quickstart.md +0 -26
  150. data/site/docs/resources.md +0 -43
  151. data/site/docs/sites.md +0 -29
  152. data/site/docs/structure.md +0 -190
  153. data/site/docs/templates.md +0 -376
  154. data/site/docs/troubleshooting.md +0 -147
  155. data/site/docs/upgrading.md +0 -146
  156. data/site/docs/usage.md +0 -74
  157. data/site/docs/variables.md +0 -382
  158. data/site/docs/windows.md +0 -44
  159. data/site/favicon.ico +0 -0
  160. data/site/feed.xml +0 -48
  161. data/site/fonts/FontAwesome.otf +0 -0
  162. data/site/fonts/fontawesome-webfont.eot +0 -0
  163. data/site/fonts/fontawesome-webfont.svg +0 -504
  164. data/site/fonts/fontawesome-webfont.ttf +0 -0
  165. data/site/fonts/fontawesome-webfont.woff +0 -0
  166. data/site/freenode.txt +0 -1
  167. data/site/img/article-footer.png +0 -0
  168. data/site/img/footer-arrow.png +0 -0
  169. data/site/img/footer-logo.png +0 -0
  170. data/site/img/jekyll-sticker.jpg +0 -0
  171. data/site/img/logo-2x.png +0 -0
  172. data/site/img/logo-rss.png +0 -0
  173. data/site/img/octojekyll.png +0 -0
  174. data/site/index.html +0 -90
  175. data/site/js/html5shiv.min.js +0 -4
  176. data/site/js/respond.min.js +0 -5
  177. data/site/news/index.html +0 -10
  178. data/site/news/releases/index.html +0 -10
  179. data/test/fixtures/broken_front_matter1.erb +0 -5
  180. data/test/fixtures/broken_front_matter2.erb +0 -4
  181. data/test/fixtures/broken_front_matter3.erb +0 -7
  182. data/test/fixtures/exploit_front_matter.erb +0 -4
  183. data/test/fixtures/front_matter.erb +0 -4
  184. data/test/helper.rb +0 -80
  185. data/test/source/+/%# +.md +0 -6
  186. data/test/source/+/foo.md +0 -7
  187. data/test/source/.htaccess +0 -8
  188. data/test/source/_config.dev.toml +0 -2
  189. data/test/source/_data/categories/dairy.yaml +0 -6
  190. data/test/source/_data/languages.yml +0 -2
  191. data/test/source/_data/members.json +0 -12
  192. data/test/source/_data/members.yaml +0 -7
  193. data/test/source/_data/products.yml +0 -4
  194. data/test/source/_drafts/draft-properties.text +0 -11
  195. data/test/source/_includes/include.html +0 -1
  196. data/test/source/_includes/params.html +0 -7
  197. data/test/source/_includes/sig.markdown +0 -3
  198. data/test/source/_layouts/default.html +0 -27
  199. data/test/source/_layouts/post/simple.html +0 -1
  200. data/test/source/_layouts/simple.html +0 -1
  201. data/test/source/_methods/_do_not_read_me.md +0 -5
  202. data/test/source/_methods/configuration.md +0 -8
  203. data/test/source/_methods/sanitized_path.md +0 -5
  204. data/test/source/_methods/site/_dont_include_me_either.md +0 -5
  205. data/test/source/_methods/site/generate.md +0 -6
  206. data/test/source/_methods/site/initialize.md +0 -4
  207. data/test/source/_methods/um_hi.md +0 -6
  208. data/test/source/_plugins/dummy.rb +0 -8
  209. data/test/source/_posts/2008-02-02-not-published.textile +0 -8
  210. data/test/source/_posts/2008-02-02-published.textile +0 -8
  211. data/test/source/_posts/2008-10-18-foo-bar.textile +0 -8
  212. data/test/source/_posts/2008-11-21-complex.textile +0 -8
  213. data/test/source/_posts/2008-12-03-permalinked-post.textile +0 -9
  214. data/test/source/_posts/2008-12-13-include.markdown +0 -8
  215. data/test/source/_posts/2009-01-27-array-categories.textile +0 -10
  216. data/test/source/_posts/2009-01-27-categories.textile +0 -7
  217. data/test/source/_posts/2009-01-27-category.textile +0 -7
  218. data/test/source/_posts/2009-01-27-empty-categories.textile +0 -7
  219. data/test/source/_posts/2009-01-27-empty-category.textile +0 -7
  220. data/test/source/_posts/2009-01-27-no-category.textile +0 -6
  221. data/test/source/_posts/2009-03-12-hash-#1.markdown +0 -6
  222. data/test/source/_posts/2009-05-18-empty-tag.textile +0 -6
  223. data/test/source/_posts/2009-05-18-empty-tags.textile +0 -6
  224. data/test/source/_posts/2009-05-18-tag.textile +0 -6
  225. data/test/source/_posts/2009-05-18-tags.textile +0 -9
  226. data/test/source/_posts/2009-06-22-empty-yaml.textile +0 -3
  227. data/test/source/_posts/2009-06-22-no-yaml.textile +0 -1
  228. data/test/source/_posts/2010-01-08-triple-dash.markdown +0 -5
  229. data/test/source/_posts/2010-01-09-date-override.textile +0 -7
  230. data/test/source/_posts/2010-01-09-time-override.textile +0 -7
  231. data/test/source/_posts/2010-01-09-timezone-override.textile +0 -7
  232. data/test/source/_posts/2010-01-16-override-data.textile +0 -4
  233. data/test/source/_posts/2011-04-12-md-extension.md +0 -7
  234. data/test/source/_posts/2011-04-12-text-extension.text +0 -0
  235. data/test/source/_posts/2013-01-02-post-excerpt.markdown +0 -14
  236. data/test/source/_posts/2013-01-12-nil-layout.textile +0 -6
  237. data/test/source/_posts/2013-01-12-no-layout.textile +0 -5
  238. data/test/source/_posts/2013-03-19-not-a-post.markdown/.gitkeep +0 -0
  239. data/test/source/_posts/2013-04-11-custom-excerpt.markdown +0 -10
  240. data/test/source/_posts/2013-05-10-number-category.textile +0 -7
  241. data/test/source/_posts/2013-07-22-post-excerpt-with-layout.markdown +0 -23
  242. data/test/source/_posts/2013-08-01-mkdn-extension.mkdn +0 -0
  243. data/test/source/_posts/2013-12-17-include-variable-filters.markdown +0 -21
  244. data/test/source/_posts/2013-12-20-properties.text +0 -11
  245. data/test/source/_posts/2014-01-06-permalink-traversal.md +0 -5
  246. data/test/source/_posts/2014-03-03-yaml-with-dots.md +0 -5
  247. data/test/source/_posts/2014-03-22-escape-+ %20[].markdown +0 -6
  248. data/test/source/_posts/es/2008-11-21-nested.textile +0 -8
  249. data/test/source/_sass/_grid.scss +0 -1
  250. data/test/source/_slides/example-slide-1.html +0 -4
  251. data/test/source/_slides/example-slide-2.html +0 -7
  252. data/test/source/_slides/example-slide-3.html +0 -5
  253. data/test/source/_with.dots/all.dots/2.4.0.md +0 -5
  254. data/test/source/_with.dots/file.with.dots.md +0 -0
  255. data/test/source/about.html +0 -6
  256. data/test/source/category/_posts/2008-9-23-categories.textile +0 -6
  257. data/test/source/contacts.html +0 -5
  258. data/test/source/contacts/bar.html +0 -5
  259. data/test/source/contacts/index.html +0 -5
  260. data/test/source/css/main.scss +0 -4
  261. data/test/source/css/screen.css +0 -76
  262. data/test/source/deal.with.dots.html +0 -7
  263. data/test/source/environment.html +0 -5
  264. data/test/source/exploit.md +0 -5
  265. data/test/source/foo/_posts/bar/2008-12-12-topical-post.textile +0 -8
  266. data/test/source/index.html +0 -22
  267. data/test/source/js/coffeescript.coffee +0 -10
  268. data/test/source/pgp.key +0 -2
  269. data/test/source/products.yml +0 -4
  270. data/test/source/properties.html +0 -8
  271. data/test/source/sitemap.xml +0 -32
  272. data/test/source/static_files.html +0 -4
  273. data/test/source/symlink-test/symlinked-file +0 -22
  274. data/test/source/unpublished.html +0 -7
  275. data/test/source/win/_posts/2009-05-24-yaml-linebreak.markdown +0 -7
  276. data/test/source/z_category/_posts/2008-9-23-categories.textile +0 -6
  277. data/test/suite.rb +0 -11
  278. data/test/test_cleaner.rb +0 -77
  279. data/test/test_coffeescript.rb +0 -49
  280. data/test/test_collections.rb +0 -224
  281. data/test/test_command.rb +0 -53
  282. data/test/test_configuration.rb +0 -201
  283. data/test/test_convertible.rb +0 -49
  284. data/test/test_document.rb +0 -193
  285. data/test/test_draft.rb +0 -56
  286. data/test/test_entry_filter.rb +0 -124
  287. data/test/test_excerpt.rb +0 -131
  288. data/test/test_filters.rb +0 -207
  289. data/test/test_generated_site.rb +0 -97
  290. data/test/test_kramdown.rb +0 -62
  291. data/test/test_layout_reader.rb +0 -34
  292. data/test/test_liquid_extensions.rb +0 -31
  293. data/test/test_log_adapter.rb +0 -59
  294. data/test/test_new_command.rb +0 -104
  295. data/test/test_page.rb +0 -254
  296. data/test/test_path_sanitization.rb +0 -18
  297. data/test/test_post.rb +0 -741
  298. data/test/test_rdiscount.rb +0 -22
  299. data/test/test_redcarpet.rb +0 -77
  300. data/test/test_redcloth.rb +0 -86
  301. data/test/test_related_posts.rb +0 -47
  302. data/test/test_sass.rb +0 -26
  303. data/test/test_site.rb +0 -452
  304. data/test/test_tags.rb +0 -509
  305. data/test/test_url.rb +0 -28
  306. data/test/test_utils.rb +0 -67
data/Rakefile DELETED
@@ -1,268 +0,0 @@
1
- require 'rubygems'
2
- require 'rake'
3
- require 'rdoc'
4
- require 'date'
5
- require 'yaml'
6
-
7
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), *%w[lib]))
8
- require 'jekyll/version'
9
-
10
- #############################################################################
11
- #
12
- # Helper functions
13
- #
14
- #############################################################################
15
-
16
- def name
17
- @name ||= File.basename(Dir['*.gemspec'].first, ".*")
18
- end
19
-
20
- def version
21
- Jekyll::VERSION
22
- end
23
-
24
- def gemspec_file
25
- "#{name}.gemspec"
26
- end
27
-
28
- def gem_file
29
- "#{name}-#{version}.gem"
30
- end
31
-
32
- def normalize_bullets(markdown)
33
- markdown.gsub(/\n\s{2}\*{1}/, "\n-")
34
- end
35
-
36
- def linkify_prs(markdown)
37
- markdown.gsub(/#(\d+)/) do |word|
38
- "[#{word}]({{ site.repository }}/issues/#{word.delete("#")})"
39
- end
40
- end
41
-
42
- def linkify_users(markdown)
43
- markdown.gsub(/(@\w+)/) do |username|
44
- "[#{username}](https://github.com/#{username.delete("@")})"
45
- end
46
- end
47
-
48
- def linkify(markdown)
49
- linkify_users(linkify_prs(markdown))
50
- end
51
-
52
- def liquid_escape(markdown)
53
- markdown.gsub(/(`{[{%].+[}%]}`)/, "{% raw %}\\1{% endraw %}")
54
- end
55
-
56
- def custom_release_header_anchors(markdown)
57
- header_regexp = /^(\d{1,2})\.(\d{1,2})\.(\d{1,2}) \/ \d{4}-\d{2}-\d{2}/
58
- section_regexp = /^### \w+ \w+$/
59
- markdown.split(/^##\s/).map do |release_notes|
60
- _, major, minor, patch = *release_notes.match(header_regexp)
61
- release_notes
62
- .gsub(header_regexp, "\\0\n{: #v\\1-\\2-\\3}")
63
- .gsub(section_regexp) { |section| "#{section}\n{: ##{sluffigy(section)}-v#{major}-#{minor}-#{patch}}" }
64
- end.join("\n## ")
65
- end
66
-
67
- def sluffigy(header)
68
- header.gsub(/#/, '').strip.downcase.gsub(/\s+/, '-')
69
- end
70
-
71
- def remove_head_from_history(markdown)
72
- index = markdown =~ /^##\s+\d+\.\d+\.\d+/
73
- markdown[index..-1]
74
- end
75
-
76
- def converted_history(markdown)
77
- remove_head_from_history(
78
- custom_release_header_anchors(
79
- liquid_escape(
80
- linkify(
81
- normalize_bullets(markdown)))))
82
- end
83
-
84
- #############################################################################
85
- #
86
- # Standard tasks
87
- #
88
- #############################################################################
89
-
90
- task :default => [:test, :features]
91
-
92
- require 'rake/testtask'
93
- Rake::TestTask.new(:test) do |test|
94
- test.libs << 'lib' << 'test'
95
- test.pattern = 'test/**/test_*.rb'
96
- test.verbose = true
97
- end
98
-
99
- require 'rdoc/task'
100
- Rake::RDocTask.new do |rdoc|
101
- rdoc.rdoc_dir = 'rdoc'
102
- rdoc.title = "#{name} #{version}"
103
- rdoc.rdoc_files.include('README*')
104
- rdoc.rdoc_files.include('lib/**/*.rb')
105
- end
106
-
107
- begin
108
- require 'cucumber/rake/task'
109
- Cucumber::Rake::Task.new(:features) do |t|
110
- t.profile = "travis"
111
- end
112
- Cucumber::Rake::Task.new(:"features:html", "Run Cucumber features and produce HTML output") do |t|
113
- t.profile = "html_report"
114
- end
115
- rescue LoadError
116
- desc 'Cucumber rake task not available'
117
- task :features do
118
- abort 'Cucumber rake task is not available. Be sure to install cucumber as a gem or plugin'
119
- end
120
- end
121
-
122
- desc "Open an irb session preloaded with this library"
123
- task :console do
124
- sh "irb -rubygems -r ./lib/#{name}.rb"
125
- end
126
-
127
- #############################################################################
128
- #
129
- # Site tasks - http://jekyllrb.com
130
- #
131
- #############################################################################
132
-
133
- namespace :site do
134
- desc "Generate and view the site locally"
135
- task :preview do
136
- require "launchy"
137
-
138
- # Yep, it's a hack! Wait a few seconds for the Jekyll site to generate and
139
- # then open it in a browser. Someday we can do better than this, I hope.
140
- Thread.new do
141
- sleep 4
142
- puts "Opening in browser..."
143
- Launchy.open("http://localhost:4000")
144
- end
145
-
146
- # Generate the site in server mode.
147
- puts "Running Jekyll..."
148
- Dir.chdir("site") do
149
- sh "#{File.expand_path('bin/jekyll', File.dirname(__FILE__))} serve --watch"
150
- end
151
- end
152
-
153
- desc "Update normalize.css library to the latest version and minify"
154
- task :update_normalize_css do
155
- Dir.chdir("site/_includes/css") do
156
- sh 'curl "http://necolas.github.io/normalize.css/latest/normalize.css" -o "normalize.scss"'
157
- sh 'sass "normalize.scss":"normalize.css" --style compressed'
158
- sh 'rm "normalize.scss"'
159
- end
160
- end
161
-
162
- desc "Commit the local site to the gh-pages branch and publish to GitHub Pages"
163
- task :publish => [:history] do
164
- # Ensure the gh-pages dir exists so we can generate into it.
165
- puts "Checking for gh-pages dir..."
166
- unless File.exist?("./gh-pages")
167
- puts "No gh-pages directory found. Run the following commands first:"
168
- puts " `git clone git@github.com:jekyll/jekyll gh-pages"
169
- puts " `cd gh-pages"
170
- puts " `git checkout gh-pages`"
171
- exit(1)
172
- end
173
-
174
- # Ensure gh-pages branch is up to date.
175
- Dir.chdir('gh-pages') do
176
- sh "git pull origin gh-pages"
177
- end
178
-
179
- # Copy to gh-pages dir.
180
- puts "Copying site to gh-pages branch..."
181
- Dir.glob("site/*") do |path|
182
- next if path.include? "_site"
183
- sh "cp -R #{path} gh-pages/"
184
- end
185
-
186
- # Commit and push.
187
- puts "Committing and pushing to GitHub Pages..."
188
- sha = `git log`.match(/[a-z0-9]{40}/)[0]
189
- Dir.chdir('gh-pages') do
190
- sh "git add ."
191
- sh "git commit --allow-empty -m 'Updating to #{sha}.'"
192
- sh "git push origin gh-pages"
193
- end
194
- puts 'Done.'
195
- end
196
-
197
- desc "Create a nicely formatted history page for the jekyll site based on the repo history."
198
- task :history do
199
- if File.exist?("History.markdown")
200
- history_file = File.read("History.markdown")
201
- front_matter = {
202
- "layout" => "docs",
203
- "title" => "History",
204
- "permalink" => "/docs/history/",
205
- "prev_section" => "contributing"
206
- }
207
- Dir.chdir('site/docs/') do
208
- File.open("history.md", "w") do |file|
209
- file.write("#{front_matter.to_yaml}---\n\n")
210
- file.write(converted_history(history_file))
211
- end
212
- end
213
- else
214
- abort "You seem to have misplaced your History.markdown file. I can haz?"
215
- end
216
- end
217
-
218
- namespace :releases do
219
- desc "Create new release post"
220
- task :new, :version do |t, args|
221
- raise "Specify a version: rake site:releases:new['1.2.3']" unless args.version
222
- today = Time.new.strftime('%Y-%m-%d')
223
- release = args.version.to_s
224
- filename = "site/_posts/#{today}-jekyll-#{release.split('.').join('-')}-released.markdown"
225
-
226
- File.open(filename, "wb") do |post|
227
- post.puts("---")
228
- post.puts("layout: news_item")
229
- post.puts("title: 'Jekyll #{release} Released'")
230
- post.puts("date: #{Time.new.strftime('%Y-%m-%d %H:%M:%S %z')}")
231
- post.puts("author: ")
232
- post.puts("version: #{release}")
233
- post.puts("categories: [release]")
234
- post.puts("---")
235
- post.puts
236
- post.puts
237
- end
238
-
239
- puts "Created #{filename}"
240
- end
241
- end
242
- end
243
-
244
- #############################################################################
245
- #
246
- # Packaging tasks
247
- #
248
- #############################################################################
249
-
250
- desc "Release #{name} v#{version}"
251
- task :release => :build do
252
- unless `git branch` =~ /^\* master$/
253
- puts "You must be on the master branch to release!"
254
- exit!
255
- end
256
- sh "git commit --allow-empty -m 'Release #{version}'"
257
- sh "git tag v#{version}"
258
- sh "git push origin master"
259
- sh "git push origin v#{version}"
260
- sh "gem push pkg/#{name}-#{version}.gem"
261
- end
262
-
263
- desc "Build #{name} v#{version} into pkg/"
264
- task :build do
265
- mkdir_p "pkg"
266
- sh "gem build #{gemspec_file}"
267
- sh "mv #{gem_file} pkg"
268
- end
@@ -1,3 +0,0 @@
1
- default: --format pretty
2
- travis: --format progress
3
- html_report: --format progress --format html --out=features_report.html
@@ -1,93 +0,0 @@
1
- コントリビュート
2
- ==========
3
-
4
- あなたは Jekyll に投じるすばらしいアイディアを持っています。
5
- すばらしいことです!次の事柄を心に留めてください。
6
-
7
- * **テストなしではコントリビュートはできません。**
8
- * もし、既存の機能への小さな修正やパッチを作成したなら、シンプルなテストを行います。
9
- 現在のテストスイートの範囲にとどまり、そして
10
- [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) や
11
- [RR](https://github.com/btakita/rr/tree/master) を使用してください。
12
- * もし、それが新しい機能の場合は、必ず新しい
13
- [Cucumber](https://github.com/cucumber/cucumber/) の機能を作成し、
14
- 必要に応じて手順を再利用します。
15
- また、あなたがフォークした `site` に
16
- 急ぎいくつかのドキュメントを用意し、一度マージを行い
17
- メイン `site` の jekyllrb.com に転送していただければ幸いです。
18
- * あなたのコントリビュートによって Jekyll の振る舞いが変わった場合、ドキュメントを更新すべきです。
19
- それは `site/docs` にあります。
20
- もし、 docs に情報の誤りがあった場合、遠慮なく追加してください。
21
- すばらしいドキュメントはすばらしいプロジェクトを作ります!
22
- * Ruby のコードを変更するときは、 [GitHub Ruby Styleguide](https://github.com/styleguide/ruby)
23
- に従ってください。
24
- * **小さなプルリクエスト** に最善を尽くしてください。
25
- 簡単に提案された変更はレビューされ、マージされる可能性が高いです。
26
- * プルリクエストを送信するとき、プルリクエストのボディを賢明に使用してください。
27
- 変更されたかどうかの記述、変更の背後にある動機、 [完了したかどうかのタスクリスト](http://git.io/gfm-tasks)
28
- もレビュー時間を早めます。
29
-
30
- テストの依存関係
31
- -----------------
32
-
33
- テストスイートの実行や gem のビルドのために、
34
- Jekyll の依存ツールをインストールする必要があります。
35
- Jekyll は Bundler を使用しており、 `bundle` コマンドを実行すると全ての設定が迅速に行われます!
36
-
37
- $ bundle
38
-
39
- はじめる前に、テストを実行し、必ずテストが通ることを
40
- 確認してください(あなたの環境が適切に設定されているかを確認するために):
41
-
42
- $ bundle exec rake test
43
- $ bundle exec rake features
44
-
45
- ワークフロー
46
- --------
47
-
48
- これは、あなたの作業がプロジェクトにマージされるもっとも直接的な方法です:
49
-
50
- * プロジェクトをフォークします。
51
- * あなたのフォークプロジェクトをクローンします ( `git clone git@github.com:<username>/jekyll.git` )。
52
- * トピックブランチを作成し、あなたの変更を含んでください ( `git checkout -b my_awesome_feature` )。
53
- * ハックし、テストを追加します。必ずしもこの順番でなくてかまいません
54
- * `rake` を実行し、テストが必ず全て通ることを確認してください
55
- * 必要に応じて、エラーがないようにコミットを論理的な塊にリベースしてください
56
- * ブランチをプッシュしてください ( `git push origin my_awesome_feature` ).
57
- * jekyll/jekyll プロジェクトの master ブランチに対してプルリクエストを作成し、
58
- あなたの変更内容と、なぜそれをマージすべきかを記述してください
59
-
60
- ドキュメントの更新
61
- ----------------------
62
-
63
- 私たちは Jekyll のドキュメントについて最善を尽くしたいです。
64
- 私たちはドキュメントをオープンソース化しました、そして
65
- あなたが Jekyll に欠けているものを見つけた場合、私たちはプルリクエストを歓迎しています。
66
-
67
- あなたは、 GitHub.com 上の Jekyll リポジトリの [site]({{ site.repository }}/tree/master/site) で
68
- jekyllrb.comのドキュメントを見つけることができます。
69
-
70
- 全てのドキュメントのプルリクエストは `master` に向けられる必要があります。
71
- 他のブランチに向けたプルリクエストは受け入れられません。
72
-
73
- GitHub の [Jekyll wiki](https://github.com/jekyll/jekyll/wiki) は、
74
- 自由に更新することができるように、プルリクエストなしで
75
- 全ての GitHub ユーザがアクセス権を持つことができます。
76
-
77
- 落とし穴
78
- -------
79
-
80
- * もし、 gem のバージョンがかちあった場合、コミットを分けてください。
81
- この方法だと、メンテナが gem をリリースするときに制御できます。
82
- * jekyll/jekyll の最新コミットに基づいて(複数の)パッチを維持してください。
83
- それは適用するためのあなたの仕事で、メンテナがしなければならないことを少なくするのは
84
- とてもよいことです。
85
- * あなたの GitHub issue で [fix], [feature] などのタグをつけないでください。
86
- メンテナは積極的に issue を読み、彼らが問題に出くわしたらラベルをつけるでしょう。
87
-
88
- 最後に…
89
- ----------
90
-
91
- ありがとう! Jekyll のハックは楽しいものでなければなりません。
92
- もし、あなたがこのハードを理解するための何かを発見した場合、知らせてください。
93
- 我々のプロセスやドキュメントを改善することができます!
@@ -1,68 +0,0 @@
1
- # [Jekyll](http://jekyllrb.com/)
2
-
3
- [![Gem Version](https://badge.fury.io/rb/jekyll.png)](http://badge.fury.io/rb/jekyll)
4
-
5
- [![Build Status](https://secure.travis-ci.org/jekyll/jekyll.png?branch=master)](https://travis-ci.org/jekyll/jekyll)
6
- [![Code Climate](https://codeclimate.com/github/jekyll/jekyll.png)](https://codeclimate.com/github/jekyll/jekyll)
7
- [![Dependency Status](https://gemnasium.com/jekyll/jekyll.png)](https://gemnasium.com/jekyll/jekyll)
8
-
9
- Tom Preston-Werner, Nick Quaranto や多くの[素晴らしいコントリビュータ](https://github.com/jekyll/jekyll/graphs/contributors)によって作成されています!
10
-
11
- Jekyll は個人プロジェクトや組織のサイトに最適な、シンプルで、ブログを意識した静的サイトジェネレータです。
12
- 複雑さを排除したファイルベースのCMSのようなものと考えてください。
13
- Jekyll はコンテンツを受け取り、 Markdown や Liquid テンプレート をレンダリングし、
14
- Apache や Nginx やその他の Web サーバに提供する準備ができた静的な Web サイトを完全に出力してくれます。
15
- Jekyll は [GitHub Pages](http://pages.github.com) の背後にあるエンジンなので、
16
- あなたの GitHub リポジトリからサイトをホストするために使用する事ができます。
17
-
18
- ## 原理
19
-
20
- Jekyll あなたがするように伝えたことをします ― それ以上でもそれ以下でもありません。
21
- それは、大胆な仮定によってユーザの裏をかこうとせず、
22
- また、不必要な複雑さや設定をユーザに負担しません。
23
- 簡単に言えば、 Jekyll はあなたの道を開け、
24
- 真に重要なもの: コンテンツに集中することができます。
25
-
26
- ## 開始方法
27
-
28
- * gem を[インストール](http://jekyllrb.com/docs/installation/)します
29
- * [使用方法](http://jekyllrb.com/docs/usage/) と [設定方法](http://jekyllrb.com/docs/configuration/) を読みます
30
- * 既存の [Jekyll で作られたサイト](https://wiki.github.com/jekyll/jekyll/sites) をチラッと見ます
31
- * Fork し、あなたの変更を [コントリビュート](http://jekyllrb.com/docs/contributing/) します
32
- * 質問があったら? irc.freenode.net の `#jekyll` チャンネルをチェックしてください
33
-
34
- ## より深く
35
-
36
- * 以前のシステムからの[移行](http://jekyllrb.com/docs/migrations/)
37
- * [YAML Front Matter](http://jekyllrb.com/docs/frontmatter/) がどのように働くかを学ぶ
38
- * [変数](http://jekyllrb.com/docs/variables/)を使ってサイトに情報を表示する
39
- * posts が生成される時の[パーマリンク](http://jekyllrb.com/docs/permalinks/)をカスタマイズ
40
- * 人生を容易にするために、組み込みの [Liquid 拡張](http://jekyllrb.com/docs/templates/)を使用する
41
- * あなたのサイト固有のコンテンツを生成するために、カスタム[プラグイン](http://jekyllrb.com/docs/plugins/)を使用する
42
-
43
- ## 実行時の依存関係
44
-
45
- * Commander: コマンドラインインターフェース構築 (Ruby)
46
- * Colorator: コマンドライン出力に色付け (Ruby)
47
- * Classifier: posts の関連を生成 (Ruby)
48
- * Directory Watcher: サイトの自動再生成 (Ruby)
49
- * Kramdown: デフォルトの Markdown エンジン (Ruby)
50
- * Liquid: テンプレートシステム (Ruby)
51
- * Pygments.rb: シンタックスハイライト (Ruby/Python)
52
- * RedCarpet: Markdown エンジン (Ruby)
53
- * Safe YAML: セキュリティのために構築された YAML パーサ (Ruby)
54
-
55
- ## 開発時の依存関係
56
-
57
- * Launchy: クロスプラットフォーム ファイルランチャ (Ruby)
58
- * Maruku: Markdown スーパーセット インタプリタ (Ruby)
59
- * RDiscount: Discount Markdown プロセッサ (Ruby)
60
- * RedCloth: Textile サポート (Ruby)
61
- * RedGreen: よりよいテスト出力 (Ruby)
62
- * RR: モック (Ruby)
63
- * Shoulda: テストフレームワーク (Ruby)
64
- * SimpleCov: カバレッジフレームワーク (Ruby)
65
-
66
- ## ライセンス
67
-
68
- [ライセンス](https://github.com/jekyll/jekyll/blob/master/LICENSE)を見てください。
@@ -1,145 +0,0 @@
1
- Feature: Collections
2
- As a hacker who likes to structure content
3
- I want to be able to create collections of similar information
4
- And render them
5
-
6
- Scenario: Unrendered collection
7
- Given I have an "index.html" page that contains "Collections: {{ site.methods }}"
8
- And I have fixture collections
9
- And I have a configuration file with "collections" set to "['methods']"
10
- When I run jekyll build
11
- Then the _site directory should exist
12
- And I should see "Collections: <p>Use <code>Jekyll.configuration</code> to build a full configuration for use w/Jekyll.</p>\n\n<p>Whatever: foo.bar</p>\n<p><code>Jekyll.sanitized_path</code> is used to make sure your path is in your source.</p>\n<p>Run your generators! default</p>\n<p>Page without title.</p>\n<p>Run your generators! default</p>" in "_site/index.html"
13
- And the "_site/methods/configuration.html" file should not exist
14
-
15
- Scenario: Rendered collection
16
- Given I have an "index.html" page that contains "Collections: {{ site.collections }}"
17
- And I have an "collection_metadata.html" page that contains "Methods metadata: {{ site.collections.methods.foo }} {{ site.collections.methods }}"
18
- And I have fixture collections
19
- And I have a "_config.yml" file with content:
20
- """
21
- collections:
22
- methods:
23
- output: true
24
- foo: bar
25
- """
26
- When I run jekyll build
27
- Then the _site directory should exist
28
- And I should see "Collections: {\"methods" in "_site/index.html"
29
- And I should see "Methods metadata: bar" in "_site/collection_metadata.html"
30
- And I should see "<p>Whatever: foo.bar</p>" in "_site/methods/configuration.html"
31
-
32
- Scenario: Rendered collection at a custom URL
33
- Given I have an "index.html" page that contains "Collections: {{ site.collections }}"
34
- And I have fixture collections
35
- And I have a "_config.yml" file with content:
36
- """
37
- collections:
38
- methods:
39
- output: true
40
- permalink: /:collection/:path/
41
- """
42
- When I run jekyll build
43
- Then the _site directory should exist
44
- And I should see "<p>Whatever: foo.bar</p>" in "_site/methods/configuration/index.html"
45
-
46
- Scenario: Rendered document in a layout
47
- Given I have an "index.html" page that contains "Collections: {{ site.collections }}"
48
- And I have a default layout that contains "<div class='title'>Tom Preston-Werner</div> {{content}}"
49
- And I have fixture collections
50
- And I have a "_config.yml" file with content:
51
- """
52
- collections:
53
- methods:
54
- output: true
55
- foo: bar
56
- """
57
- When I run jekyll build
58
- Then the _site directory should exist
59
- And I should see "Collections: {\"methods" in "_site/index.html"
60
- And I should see "<p>Run your generators! default</p>" in "_site/methods/site/generate.html"
61
- And I should see "<div class='title'>Tom Preston-Werner</div>" in "_site/methods/site/generate.html"
62
-
63
- Scenario: Collections specified as an array
64
- Given I have an "index.html" page that contains "Collections: {% for method in site.methods %}{{ method.relative_path }} {% endfor %}"
65
- And I have fixture collections
66
- And I have a "_config.yml" file with content:
67
- """
68
- collections:
69
- - methods
70
- """
71
- When I run jekyll build
72
- Then the _site directory should exist
73
- And I should see "Collections: _methods/configuration.md _methods/sanitized_path.md _methods/site/generate.md _methods/site/initialize.md _methods/um_hi.md" in "_site/index.html"
74
-
75
- Scenario: Collections specified as an hash
76
- Given I have an "index.html" page that contains "Collections: {% for method in site.methods %}{{ method.relative_path }} {% endfor %}"
77
- And I have fixture collections
78
- And I have a "_config.yml" file with content:
79
- """
80
- collections:
81
- - methods
82
- """
83
- When I run jekyll build
84
- Then the _site directory should exist
85
- And I should see "Collections: _methods/configuration.md _methods/sanitized_path.md _methods/site/generate.md _methods/site/initialize.md _methods/um_hi.md" in "_site/index.html"
86
-
87
- Scenario: All the documents
88
- Given I have an "index.html" page that contains "All documents: {% for doc in site.documents %}{{ doc.relative_path }} {% endfor %}"
89
- And I have fixture collections
90
- And I have a "_config.yml" file with content:
91
- """
92
- collections:
93
- - methods
94
- """
95
- When I run jekyll build
96
- Then the _site directory should exist
97
- And I should see "All documents: _methods/configuration.md _methods/sanitized_path.md _methods/site/generate.md _methods/site/initialize.md _methods/um_hi.md" in "_site/index.html"
98
-
99
- Scenario: Documents have an output attribute, which is the converted HTML
100
- Given I have an "index.html" page that contains "First document's output: {{ site.documents.first.output }}"
101
- And I have fixture collections
102
- And I have a "_config.yml" file with content:
103
- """
104
- collections:
105
- - methods
106
- """
107
- When I run jekyll build
108
- Then the _site directory should exist
109
- And I should see "First document's output: <p>Use <code>Jekyll.configuration</code> to build a full configuration for use w/Jekyll.</p>\n\n<p>Whatever: foo.bar</p>" in "_site/index.html"
110
-
111
- Scenario: Filter documents by where
112
- Given I have an "index.html" page that contains "{% assign items = site.methods | where: 'whatever','foo.bar' %}Item count: {{ items.size }}"
113
- And I have fixture collections
114
- And I have a "_config.yml" file with content:
115
- """
116
- collections:
117
- - methods
118
- """
119
- When I run jekyll build
120
- Then the _site directory should exist
121
- And I should see "Item count: 1" in "_site/index.html"
122
-
123
- Scenario: Sort by title
124
- Given I have an "index.html" page that contains "{% assign items = site.methods | sort: 'title' %}1. of {{ items.size }}: {{ items.first.output }}"
125
- And I have fixture collections
126
- And I have a "_config.yml" file with content:
127
- """
128
- collections:
129
- - methods
130
- """
131
- When I run jekyll build
132
- Then the _site directory should exist
133
- And I should see "1. of 5: <p>Page without title.</p>" in "_site/index.html"
134
-
135
- Scenario: Sort by relative_path
136
- Given I have an "index.html" page that contains "Collections: {% assign methods = site.methods | sort: 'relative_path' %}{% for method in methods %}{{ method.title }}, {% endfor %}"
137
- And I have fixture collections
138
- And I have a "_config.yml" file with content:
139
- """
140
- collections:
141
- - methods
142
- """
143
- When I run jekyll build
144
- Then the _site directory should exist
145
- And I should see "Collections: Jekyll.configuration, Jekyll.sanitized_path, Site#generate, , Site#generate," in "_site/index.html"