monad 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.markdown +91 -0
  3. data/Gemfile +1 -1
  4. data/History.markdown +772 -0
  5. data/{README.md → README.markdown} +5 -2
  6. data/Rakefile +163 -1
  7. data/bin/monad +86 -30
  8. data/features/create_sites.feature +54 -25
  9. data/features/data.feature +65 -0
  10. data/features/data_sources.feature +10 -10
  11. data/features/drafts.feature +5 -5
  12. data/features/embed_filters.feature +10 -10
  13. data/features/include_tag.feature +48 -0
  14. data/features/markdown.feature +5 -5
  15. data/features/pagination.feature +38 -10
  16. data/features/permalinks.feature +31 -11
  17. data/features/post_data.feature +41 -41
  18. data/features/post_excerpts.feature +50 -0
  19. data/features/site_configuration.feature +47 -26
  20. data/features/site_data.feature +30 -24
  21. data/features/step_definitions/{monad_steps.rb → jekyll_steps.rb} +66 -52
  22. data/features/support/env.rb +27 -8
  23. data/lib/jekyll.rb +99 -0
  24. data/lib/jekyll/cleaner.rb +73 -0
  25. data/lib/{monad → jekyll}/command.rb +6 -6
  26. data/lib/{monad → jekyll}/commands/build.rb +9 -9
  27. data/lib/jekyll/commands/doctor.rb +67 -0
  28. data/lib/jekyll/commands/new.rb +67 -0
  29. data/lib/jekyll/commands/serve.rb +65 -0
  30. data/lib/{monad → jekyll}/configuration.rb +60 -18
  31. data/lib/{monad → jekyll}/converter.rb +1 -1
  32. data/lib/{monad → jekyll}/converters/identity.rb +1 -1
  33. data/lib/{monad → jekyll}/converters/markdown.rb +2 -2
  34. data/lib/jekyll/converters/markdown/kramdown_parser.rb +29 -0
  35. data/lib/{monad → jekyll}/converters/markdown/maruku_parser.rb +12 -8
  36. data/lib/{monad → jekyll}/converters/markdown/rdiscount_parser.rb +4 -2
  37. data/lib/{monad → jekyll}/converters/markdown/redcarpet_parser.rb +1 -1
  38. data/lib/{monad → jekyll}/converters/textile.rb +1 -1
  39. data/lib/{monad → jekyll}/convertible.rb +39 -17
  40. data/lib/{monad → jekyll}/core_ext.rb +22 -4
  41. data/lib/jekyll/deprecator.rb +36 -0
  42. data/lib/{monad → jekyll}/draft.rb +1 -1
  43. data/lib/{monad → jekyll}/drivers/json_driver.rb +1 -1
  44. data/lib/{monad → jekyll}/drivers/yaml_driver.rb +1 -1
  45. data/lib/{monad → jekyll}/errors.rb +1 -1
  46. data/lib/jekyll/excerpt.rb +113 -0
  47. data/lib/{monad → jekyll}/filters.rb +16 -6
  48. data/lib/{monad → jekyll}/generator.rb +1 -1
  49. data/lib/jekyll/generators/pagination.rb +214 -0
  50. data/lib/{monad → jekyll}/layout.rb +4 -1
  51. data/lib/{monad → jekyll}/mime.types +0 -0
  52. data/lib/{monad → jekyll}/page.rb +36 -39
  53. data/lib/{monad → jekyll}/plugin.rb +1 -1
  54. data/lib/{monad → jekyll}/post.rb +58 -123
  55. data/lib/jekyll/related_posts.rb +59 -0
  56. data/lib/{monad → jekyll}/site.rb +120 -123
  57. data/lib/{monad → jekyll}/static_file.rb +1 -1
  58. data/lib/jekyll/stevenson.rb +89 -0
  59. data/lib/jekyll/tags/gist.rb +48 -0
  60. data/lib/{monad → jekyll}/tags/highlight.rb +3 -3
  61. data/lib/jekyll/tags/include.rb +135 -0
  62. data/lib/{monad → jekyll}/tags/post_url.rb +8 -6
  63. data/lib/jekyll/url.rb +67 -0
  64. data/lib/monad.rb +36 -27
  65. data/lib/site_template/_config.yml +2 -1
  66. data/lib/site_template/_layouts/default.html +21 -23
  67. data/lib/site_template/_layouts/post.html +1 -1
  68. data/lib/site_template/_posts/{0000-00-00-welcome-to-monad.markdown.erb → 0000-00-00-welcome-to-jekyll.markdown.erb} +6 -6
  69. data/lib/site_template/css/main.css +22 -27
  70. data/lib/site_template/index.html +2 -2
  71. data/monad.gemspec +153 -52
  72. data/site/.gitignore +4 -0
  73. data/site/CNAME +1 -0
  74. data/site/README +1 -0
  75. data/site/_config.yml +6 -0
  76. data/site/_includes/analytics.html +32 -0
  77. data/site/_includes/docs_contents.html +16 -0
  78. data/site/_includes/docs_contents_mobile.html +23 -0
  79. data/site/_includes/docs_option.html +11 -0
  80. data/site/_includes/docs_ul.html +20 -0
  81. data/site/_includes/footer.html +15 -0
  82. data/site/_includes/header.html +18 -0
  83. data/site/_includes/news_contents.html +23 -0
  84. data/site/_includes/news_contents_mobile.html +11 -0
  85. data/site/_includes/news_item.html +24 -0
  86. data/site/_includes/primary-nav-items.html +14 -0
  87. data/site/_includes/section_nav.html +22 -0
  88. data/site/_includes/top.html +17 -0
  89. data/site/_layouts/default.html +12 -0
  90. data/site/_layouts/docs.html +23 -0
  91. data/site/_layouts/news.html +19 -0
  92. data/site/_layouts/news_item.html +27 -0
  93. data/site/_posts/2013-05-06-jekyll-1-0-0-released.markdown +23 -0
  94. data/site/_posts/2013-05-08-jekyll-1-0-1-released.markdown +27 -0
  95. data/site/_posts/2013-05-12-jekyll-1-0-2-released.markdown +28 -0
  96. data/site/_posts/2013-06-07-jekyll-1-0-3-released.markdown +25 -0
  97. data/site/_posts/2013-07-14-jekyll-1-1-0-released.markdown +27 -0
  98. data/site/_posts/2013-07-24-jekyll-1-1-1-released.markdown +31 -0
  99. data/site/_posts/2013-07-25-jekyll-1-0-4-released.markdown +20 -0
  100. data/site/_posts/2013-07-25-jekyll-1-1-2-released.markdown +20 -0
  101. data/site/_posts/2013-09-06-jekyll-1-2-0-released.markdown +23 -0
  102. data/site/_posts/2013-09-14-jekyll-1-2-1-released.markdown +19 -0
  103. data/site/css/gridism.css +110 -0
  104. data/site/css/normalize.css +1 -0
  105. data/site/css/pygments.css +70 -0
  106. data/site/css/style.css +946 -0
  107. data/site/docs/configuration.md +373 -0
  108. data/site/docs/contributing.md +128 -0
  109. data/site/docs/datafiles.md +63 -0
  110. data/site/docs/deployment-methods.md +109 -0
  111. data/site/docs/drafts.md +20 -0
  112. data/site/docs/extras.md +56 -0
  113. data/site/docs/frontmatter.md +180 -0
  114. data/site/docs/github-pages.md +91 -0
  115. data/site/docs/heroku.md +9 -0
  116. data/site/docs/history.md +722 -0
  117. data/site/docs/index.md +52 -0
  118. data/site/docs/installation.md +76 -0
  119. data/site/docs/migrations.md +257 -0
  120. data/site/docs/pages.md +86 -0
  121. data/site/docs/pagination.md +211 -0
  122. data/site/docs/permalinks.md +180 -0
  123. data/site/docs/plugins.md +508 -0
  124. data/site/docs/posts.md +181 -0
  125. data/site/docs/quickstart.md +32 -0
  126. data/site/docs/resources.md +46 -0
  127. data/site/docs/sites.md +29 -0
  128. data/site/docs/structure.md +190 -0
  129. data/site/docs/templates.md +319 -0
  130. data/site/docs/troubleshooting.md +150 -0
  131. data/site/docs/upgrading.md +146 -0
  132. data/site/docs/usage.md +63 -0
  133. data/site/docs/variables.md +322 -0
  134. data/site/favicon.png +0 -0
  135. data/site/feed.xml +36 -0
  136. data/site/freenode.txt +1 -0
  137. data/site/img/article-footer.png +0 -0
  138. data/site/img/footer-arrow.png +0 -0
  139. data/site/img/footer-logo.png +0 -0
  140. data/site/img/logo-2x.png +0 -0
  141. data/site/img/octojekyll.png +0 -0
  142. data/site/img/tube.png +0 -0
  143. data/site/img/tube1x.png +0 -0
  144. data/site/index.html +90 -0
  145. data/site/js/modernizr-2.5.3.min.js +4 -0
  146. data/site/news/index.html +10 -0
  147. data/site/news/releases/index.html +10 -0
  148. data/test/helper.rb +6 -3
  149. data/test/source/+/foo.md +7 -0
  150. data/test/source/_data/languages.yml +2 -0
  151. data/test/source/_data/members.yaml +7 -0
  152. data/test/source/_data/products.yml +4 -0
  153. data/test/source/_includes/params.html +7 -0
  154. data/test/source/_layouts/default.html +1 -1
  155. data/test/source/_layouts/post/simple.html +1 -0
  156. data/test/source/_plugins/dummy.rb +1 -1
  157. data/test/source/_posts/2013-01-02-post-excerpt.markdown +1 -1
  158. data/test/source/_posts/2013-07-22-post-excerpt-with-layout.markdown +23 -0
  159. data/test/source/_posts/2013-08-01-mkdn-extension.mkdn +0 -0
  160. data/test/source/deal.with.dots.html +1 -1
  161. data/test/source/products.yml +4 -0
  162. data/test/test_configuration.rb +46 -11
  163. data/test/test_convertible.rb +2 -2
  164. data/test/test_excerpt.rb +78 -0
  165. data/test/test_filters.rb +4 -4
  166. data/test/test_generated_site.rb +13 -13
  167. data/test/test_json_driver.rb +9 -9
  168. data/test/test_kramdown.rb +32 -5
  169. data/test/test_new_command.rb +8 -8
  170. data/test/test_page.rb +12 -3
  171. data/test/test_pager.rb +34 -33
  172. data/test/test_post.rb +34 -26
  173. data/test/test_redcloth.rb +3 -3
  174. data/test/test_related_posts.rb +47 -0
  175. data/test/test_site.rb +102 -44
  176. data/test/test_tags.rb +168 -23
  177. data/test/test_url.rb +28 -0
  178. data/test/test_yaml_driver.rb +6 -6
  179. metadata +215 -137
  180. data/lib/monad/commands/doctor.rb +0 -29
  181. data/lib/monad/commands/new.rb +0 -50
  182. data/lib/monad/commands/serve.rb +0 -33
  183. data/lib/monad/converters/markdown/kramdown_parser.rb +0 -44
  184. data/lib/monad/deprecator.rb +0 -32
  185. data/lib/monad/generators/pagination.rb +0 -143
  186. data/lib/monad/logger.rb +0 -54
  187. data/lib/monad/tags/gist.rb +0 -30
  188. data/lib/monad/tags/include.rb +0 -37
@@ -0,0 +1,25 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.0.3 Released"
4
+ date: "2013-06-07 21:02:13 +0200"
5
+ author: parkr
6
+ version: 1.0.3
7
+ categories: [release]
8
+ ---
9
+
10
+ v1.0.3 contains some key enhancements and bug fixes:
11
+
12
+ - Fail with non-zero exit code when MaRuKu errors ([#1190][]) or Liquid errors ([#1121][])
13
+ - Add support for private gists to `gist` tag ([#1189][])
14
+ - Add `--force` option to `jekyll new` ([#1115][])
15
+ - Fix compatibility with `exclude` and `include` with pre-1.0 Jekyll ([#1114][])
16
+ - Fix pagination issue regarding `File.basename` and `page:num` ([#1063][])
17
+
18
+ See the [History][] page for more information on this release.
19
+
20
+ {% assign issue_numbers = "1190|1121|1189|1115|1114|1063" | split: "|" %}
21
+ {% for issue in issue_numbers %}
22
+ [#{{ issue }}]: {{ site.repository }}/issues/{{ issue }}
23
+ {% endfor %}
24
+
25
+ [History]: /docs/history/#103__20130607
@@ -0,0 +1,27 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.1.0 Released"
4
+ date: "2013-07-14 19:38:02 +0200"
5
+ author: parkr
6
+ version: 1.1.0
7
+ categories: [release]
8
+ ---
9
+
10
+ After a month of hard work, the Jekyll core team is excited to announce the release of
11
+ Jekyll v1.1.0! This latest release of Jekyll brings some really exciting new additions:
12
+
13
+ - Add `docs` subcommand to read Jekyll's docs when offline. ([#1046][])
14
+ - Support passing parameters to templates in `include` tag ([#1204][])
15
+ - Add support for Liquid tags to post excerpts ([#1302][])
16
+ - Fix pagination for subdirectories ([#1198][])
17
+ - Provide better error reporting when generating sites ([#1253][])
18
+ - Latest posts first in non-LSI `related_posts` ([#1271][])
19
+
20
+ See the [GitHub Release][] page for more a more detailed changelog for this release.
21
+
22
+ {% assign issue_numbers = "1046|1204|1302|1198|1171|1118|1098|1215|1253|1271" | split: "|" %}
23
+ {% for issue in issue_numbers %}
24
+ [#{{ issue }}]: {{ site.repository }}/issues/{{ issue }}
25
+ {% endfor %}
26
+
27
+ [GitHub Release]: {{ site.repository }}/releases/tag/v1.1.0
@@ -0,0 +1,31 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.1.1 Released"
4
+ date: "2013-07-24 22:24:14 +0200"
5
+ author: parkr
6
+ version: 1.1.1
7
+ categories: [release]
8
+ ---
9
+
10
+
11
+ Coming just 10 days after the release of v1.1.0, v1.1.1 is out with a patch for the nasty
12
+ excerpt inception bug ([#1339][]) and non-zero exit codes for invalid commands
13
+ ([#1338][]).
14
+
15
+ To all those affected by the [strange excerpt bug in v1.1.0][#1321], I'm sorry. I think we
16
+ have it all patched up and it should be deployed to [GitHub Pages][gh_pages] in the next
17
+ couple weeks. Thank you for your patience!
18
+
19
+ If you're checking out v1.1.x for the first time, definitely check out [what shipped with
20
+ v1.1.0!][v1_1_0]
21
+
22
+ See the [GitHub Release][] page for more a more detailed changelog for this release.
23
+
24
+ {% assign issue_numbers = "1339|1338|1321" | split: "|" %}
25
+ {% for issue in issue_numbers %}
26
+ [{{ issue }}]: {{ site.repository }}/issues/{{ issue }}
27
+ {% endfor %}
28
+
29
+ [GitHub Release]: {{ site.repository }}/releases/tag/v1.1.1
30
+ [gh_pages]: http://pages.github.com
31
+ [v1_1_0]: {{ site.repository }}/releases/tag/v1.1.0
@@ -0,0 +1,20 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.0.4 Released"
4
+ date: "2013-07-25 09:08:38 +0200"
5
+ author: mattr-
6
+ version: 1.0.4
7
+ categories: [release]
8
+ ---
9
+
10
+ Version 1.0.4 fixes a minor, but nonetheless important security vulnerability affecting several third-party Jekyll plugins. If your Jekyll site does not use plugins, you may, but are not required to upgrade at this time.
11
+
12
+ Community and custom plugins extending the `Liquid::Drop` class may inadvertently disclose some system information such as directory structure or software configuration to users with access to the Liquid templating system.
13
+
14
+ We recommend you upgrade to Jekyll v1.0.4 immediately if you use `Liquid::Drop` plugins on your Jekyll site.
15
+
16
+ Many thanks for [Ben Balter](http://github.com/benbalter) for alerting us to the problem
17
+ and [submitting a patch][1349] so quickly.
18
+
19
+ [230]: https://github.com/Shopify/liquid/pull/230
20
+ [1349]: {{ site.repository }}/issues/1349
@@ -0,0 +1,20 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.1.2 Released"
4
+ date: "2013-07-25 09:08:38 +0200"
5
+ author: parkr
6
+ version: 1.1.2
7
+ categories: [release]
8
+ ---
9
+
10
+ Version 1.1.2 fixes a minor, but nonetheless important security vulnerability affecting several third-party Jekyll plugins. If your Jekyll site does not use plugins, you may, but are not required to upgrade at this time.
11
+
12
+ Community and custom plugins extending the `Liquid::Drop` class may inadvertently disclose some system information such as directory structure or software configuration to users with access to the Liquid templating system.
13
+
14
+ We recommend you upgrade to Jekyll v1.1.2 immediately if you use `Liquid::Drop` plugins on your Jekyll site.
15
+
16
+ Many thanks for [Ben Balter](http://github.com/benbalter) for alerting us to the problem
17
+ and [submitting a patch][1349] so quickly.
18
+
19
+ [230]: https://github.com/Shopify/liquid/pull/230
20
+ [1349]: {{ site.repository }}/issues/1349
@@ -0,0 +1,23 @@
1
+ ---
2
+ layout: news_item
3
+ title: "Jekyll 1.2.0 Released"
4
+ date: "2013-09-06 22:02:41 -0400"
5
+ author: parkr
6
+ version: 1.2.0
7
+ categories: [release]
8
+ ---
9
+
10
+ After nearly a month and a half of hard work, the Jekyll team is happy to
11
+ announce the release of v1.2.0. It's chock full of bug fixes and some
12
+ enhancements that we think you'll love.
13
+
14
+ Here are a few things we think you'll want to know about this release:
15
+
16
+ * Run `jekyll serve --detach` to boot up a WEBrick server in the background. **Note:** you'll need to run `kill [server_pid]` to shut the server down.
17
+ * You can now **disable automatically-generated excerpts** if you set `excerpt_separator` to `""`.
18
+ * If you're moving around pages and post, you can now check for **URL conflicts** by running `jekyll doctor`.
19
+ * If you're a fan of the drafts feature, you'll be happy to know we've added `-D`, a shortened version of `--drafts`.
20
+ * Permalinks with special characters should now generate without errors.
21
+ * Expose the current Jekyll version as the `jekyll.version` Liquid variable.
22
+
23
+ For a full run-down, visit our [change log](/docs/history/)!
@@ -0,0 +1,19 @@
1
+ ---
2
+ layout: news_item
3
+ title: 'Jekyll 1.2.1 Released'
4
+ date: 2013-09-14 20:46:50 -0400
5
+ author: parkr
6
+ version: 1.2.1
7
+ categories: [release]
8
+ ---
9
+
10
+ Quick turnover, anyone? A [recent incompatibility with Liquid
11
+ v2.5.2](https://github.com/mojombo/jekyll/pull/1525) produced a nasty bug in
12
+ which `include` tags were not rendered properly within `if` blocks.
13
+
14
+ This release also includes a better handling of detached servers (prints pid and
15
+ the command for killing the process). **Note**: the `--detach` flag and
16
+ `--watch` flags are presently incompatible in 1.2.x. Fix for that coming soon!
17
+
18
+ For a full list of the fixes in this release, check out [the change
19
+ log](/docs/history/)!
@@ -0,0 +1,110 @@
1
+ /*
2
+ * Gridism
3
+ * A simple, responsive, and handy CSS grid by @cobyism
4
+ * https://github.com/cobyism/gridism
5
+ */
6
+
7
+ /* Preserve some sanity */
8
+ .grid,
9
+ .unit {
10
+ -webkit-box-sizing: border-box;
11
+ -moz-box-sizing: border-box;
12
+ box-sizing: border-box;
13
+ }
14
+
15
+ /* Set up some rules to govern the grid */
16
+ .grid {
17
+ display: block;
18
+ clear: both;
19
+ }
20
+ .grid .unit {
21
+ float: left;
22
+ width: 100%;
23
+ padding: 10px;
24
+ }
25
+
26
+ /* This ensures the outer gutters are equal to the (doubled) inner gutters. */
27
+ .grid .unit:first-child { padding-left: 20px; }
28
+ .grid .unit:last-child { padding-right: 20px; }
29
+
30
+ /* Nested grids already have padding though, so let’s nuke it */
31
+ .unit .unit:first-child { padding-left: 0; }
32
+ .unit .unit:last-child { padding-right: 0; }
33
+ .unit .grid:first-child > .unit { padding-top: 0; }
34
+ .unit .grid:last-child > .unit { padding-bottom: 0; }
35
+
36
+ /* Let people nuke the gutters/padding completely in a couple of ways */
37
+ .no-gutters .unit,
38
+ .unit.no-gutters {
39
+ padding: 0 !important;
40
+ }
41
+
42
+ /* Wrapping at a maximum width is optional */
43
+ .wrap .grid,
44
+ .grid.wrap {
45
+ max-width: 978px;
46
+ margin: 0 auto;
47
+ }
48
+
49
+ /* Width classes also have shorthand versions numbered as fractions
50
+ * For example: for a grid unit 1/3 (one third) of the parent width,
51
+ * simply apply class="w-1-3" to the element. */
52
+ .grid .whole, .grid .w-1-1 { width: 100%; }
53
+ .grid .half, .grid .w-1-2 { width: 50%; }
54
+ .grid .one-third, .grid .w-1-3 { width: 33.3332%; }
55
+ .grid .two-thirds, .grid .w-2-3 { width: 66.6665%; }
56
+ .grid .one-quarter, .grid .w-1-4 { width: 25%; }
57
+ .grid .three-quarters, .grid .w-3-4 { width: 75%; }
58
+ .grid .one-fifth, .grid .w-1-5 { width: 20%; }
59
+ .grid .two-fifths, .grid .w-2-5 { width: 40%; }
60
+ .grid .three-fifths, .grid .w-3-5 { width: 60%; }
61
+ .grid .four-fifths, .grid .w-4-5 { width: 80%; }
62
+ .grid .golden-small, .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */
63
+ .grid .golden-large, .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */
64
+
65
+ /* Utility classes */
66
+ .align-center { text-align: center; }
67
+ .align-left { text-align: left; }
68
+ .align-right { text-align: right; }
69
+ .pull-left { float: left; }
70
+ .pull-right { float: right; }
71
+
72
+ .show-on-mobiles {
73
+ display: none;
74
+ }
75
+
76
+ /* Responsive Stuff */
77
+ @media screen and (max-width: 568px) {
78
+ /* Stack anything that isn’t full-width on smaller screens */
79
+ .grid .unit {
80
+ width: 100% !important;
81
+ padding-left: 20px;
82
+ padding-right: 20px;
83
+ }
84
+ .unit .grid .unit {
85
+ padding-left: 0px;
86
+ padding-right: 0px;
87
+ }
88
+
89
+ /* Sometimes, you just want to be different on small screens */
90
+ .center-on-mobiles {
91
+ text-align: center !important;
92
+ }
93
+ .hide-on-mobiles {
94
+ display: none !important;
95
+ }
96
+ .show-on-mobiles {
97
+ display: block !important;
98
+ }
99
+ a .show-on-mobiles {
100
+ display: inline !important;
101
+ }
102
+ }
103
+
104
+ /* Expand the wrap a bit further on larger screens */
105
+ /*@media screen and (min-width: 1180px) {
106
+ .wrap .grid {
107
+ max-width: 1180px;
108
+ margin: 0 auto;
109
+ }
110
+ }*/
@@ -0,0 +1 @@
1
+ /* normalize.css v2.1.2 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:0.67em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}
@@ -0,0 +1,70 @@
1
+ /*.highlight { background: #333333; color: #ffffff}*/
2
+ .highlight .hll { background-color: #ffffcc }
3
+ .highlight .c { color: #87ceeb} /* Comment */
4
+ .highlight .err { color: #ffffff} /* Error */
5
+ .highlight .g { color: #ffffff} /* Generic */
6
+ .highlight .k { color: #f0e68c} /* Keyword */
7
+ .highlight .l { color: #ffffff} /* Literal */
8
+ .highlight .n { color: #ffffff} /* Name */
9
+ .highlight .o { color: #ffffff} /* Operator */
10
+ .highlight .x { color: #ffffff} /* Other */
11
+ .highlight .p { color: #ffffff} /* Punctuation */
12
+ .highlight .cm { color: #87ceeb} /* Comment.Multiline */
13
+ .highlight .cp { color: #cd5c5c} /* Comment.Preproc */
14
+ .highlight .c1 { color: #87ceeb} /* Comment.Single */
15
+ .highlight .cs { color: #87ceeb} /* Comment.Special */
16
+ .highlight .gd { color: #0000c0; font-weight: bold; background-color: #008080 } /* Generic.Deleted */
17
+ .highlight .ge { color: #c000c0; text-decoration: underline} /* Generic.Emph */
18
+ .highlight .gr { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Error */
19
+ .highlight .gh { color: #cd5c5c} /* Generic.Heading */
20
+ .highlight .gi { color: #ffffff; background-color: #0000c0 } /* Generic.Inserted */
21
+ .highlight span.go { color: #add8e6; font-weight: bold; background-color: #4d4d4d } /* Generic.Output, qualified with span to prevent applying this style to the Go language, see #1153. */
22
+ .highlight .gp { color: #ffffff} /* Generic.Prompt */
23
+ .highlight .gs { color: #ffffff} /* Generic.Strong */
24
+ .highlight .gu { color: #cd5c5c} /* Generic.Subheading */
25
+ .highlight .gt { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Traceback */
26
+ .highlight .kc { color: #f0e68c} /* Keyword.Constant */
27
+ .highlight .kd { color: #f0e68c} /* Keyword.Declaration */
28
+ .highlight .kn { color: #f0e68c} /* Keyword.Namespace */
29
+ .highlight .kp { color: #f0e68c} /* Keyword.Pseudo */
30
+ .highlight .kr { color: #f0e68c} /* Keyword.Reserved */
31
+ .highlight .kt { color: #bdb76b} /* Keyword.Type */
32
+ .highlight .ld { color: #ffffff} /* Literal.Date */
33
+ .highlight .m { color: #ffffff} /* Literal.Number */
34
+ .highlight .s { color: #ffffff} /* Literal.String */
35
+ .highlight .na { color: #ffffff} /* Name.Attribute */
36
+ .highlight .nb { color: #ffffff} /* Name.Builtin */
37
+ .highlight .nc { color: #ffffff} /* Name.Class */
38
+ .highlight .no { color: #ffa0a0} /* Name.Constant */
39
+ .highlight .nd { color: #ffffff} /* Name.Decorator */
40
+ .highlight .ni { color: #ffdead} /* Name.Entity */
41
+ .highlight .ne { color: #ffffff} /* Name.Exception */
42
+ .highlight .nf { color: #ffffff} /* Name.Function */
43
+ .highlight .nl { color: #ffffff} /* Name.Label */
44
+ .highlight .nn { color: #ffffff} /* Name.Namespace */
45
+ .highlight .nx { color: #ffffff} /* Name.Other */
46
+ .highlight .py { color: #ffffff} /* Name.Property */
47
+ .highlight .nt { color: #f0e68c} /* Name.Tag */
48
+ .highlight .nv { color: #98fb98} /* Name.Variable */
49
+ .highlight .ow { color: #ffffff} /* Operator.Word */
50
+ .highlight .w { color: #ffffff} /* Text.Whitespace */
51
+ .highlight .mf { color: #ffffff} /* Literal.Number.Float */
52
+ .highlight .mh { color: #ffffff} /* Literal.Number.Hex */
53
+ .highlight .mi { color: #ffffff} /* Literal.Number.Integer */
54
+ .highlight .mo { color: #ffffff} /* Literal.Number.Oct */
55
+ .highlight .sb { color: #ffffff} /* Literal.String.Backtick */
56
+ .highlight .sc { color: #ffffff} /* Literal.String.Char */
57
+ .highlight .sd { color: #ffffff} /* Literal.String.Doc */
58
+ .highlight .s2 { color: #ffffff} /* Literal.String.Double */
59
+ .highlight .se { color: #ffffff} /* Literal.String.Escape */
60
+ .highlight .sh { color: #ffffff} /* Literal.String.Heredoc */
61
+ .highlight .si { color: #ffffff} /* Literal.String.Interpol */
62
+ .highlight .sx { color: #ffffff} /* Literal.String.Other */
63
+ .highlight .sr { color: #ffffff} /* Literal.String.Regex */
64
+ .highlight .s1 { color: #ffffff} /* Literal.String.Single */
65
+ .highlight .ss { color: #ffffff} /* Literal.String.Symbol */
66
+ .highlight .bp { color: #ffffff} /* Name.Builtin.Pseudo */
67
+ .highlight .vc { color: #98fb98} /* Name.Variable.Class */
68
+ .highlight .vg { color: #98fb98} /* Name.Variable.Global */
69
+ .highlight .vi { color: #98fb98} /* Name.Variable.Instance */
70
+ .highlight .il { color: #ffffff} /* Literal.Number.Integer.Long */
@@ -0,0 +1,946 @@
1
+ /* Base */
2
+
3
+ * {
4
+ box-sizing: border-box;
5
+ -webkit-box-sizing: border-box;
6
+ -moz-box-sizing: border-box;
7
+ }
8
+
9
+ body {
10
+ font-family: Lato, 'Helvetica Neue', Helvetica, Arial, sans-serif;
11
+ font-size: 21px;
12
+ font-weight: 300;
13
+ color: #ddd;
14
+ background: #333;
15
+ border-top: 5px solid #fc0;
16
+ box-shadow: inset 0 3px 30px rgba(0,0,0,.3);
17
+ text-shadow: 0 1px 3px rgba(0,0,0,.5);
18
+ }
19
+
20
+ .clear {
21
+ display: block;
22
+ }
23
+
24
+ .clear:after {
25
+ content: " ";
26
+ display: block;
27
+ height: 0;
28
+ clear: both;
29
+ visibility: hidden;
30
+ }
31
+
32
+ /* Sections */
33
+
34
+ body > header, body > section, body > footer {
35
+ float: left;
36
+ width: 100%;
37
+ clear: both;
38
+ }
39
+
40
+ /* Header */
41
+
42
+ body > header h1, body > header nav {
43
+ display: inline-block;
44
+ }
45
+
46
+ body > header h1 span {
47
+ display: none;
48
+ }
49
+
50
+ nav ul {
51
+ padding: 0;
52
+ margin: 0;
53
+ }
54
+
55
+ nav li {
56
+ display: inline-block;
57
+ }
58
+
59
+ .main-nav {
60
+ margin-top: 52px;
61
+ }
62
+
63
+ .main-nav li {
64
+ margin-right: 10px;
65
+ }
66
+
67
+ .main-nav li a {
68
+ border-radius: 5px;
69
+ font-weight: 800;
70
+ font-size: 14px;
71
+ padding: 0.5em 1em;
72
+ text-shadow: none;
73
+ text-transform: uppercase;
74
+ transition: all .25s;
75
+ -moz-transition: all .25s;
76
+ -webkit-transition: all .25s;
77
+ }
78
+
79
+ .main-nav li a:hover {
80
+ background: #252525;
81
+ box-shadow: inset 0 1px 3px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.1);
82
+ text-shadow: 0 1px 3px rgba(0,0,0,.5);
83
+ }
84
+
85
+ .main-nav li.current a {
86
+ background: #fc0;
87
+ color: #222;
88
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 1px 5px rgba(0,0,0,.5);
89
+ text-shadow: 0 1px 0 rgba(255,255,255,.3);
90
+ }
91
+
92
+ .mobile-nav ul {
93
+ overflow: hidden;
94
+ width: 100%;
95
+ display: table;
96
+ }
97
+
98
+ .mobile-nav a {
99
+ float: left;
100
+ width: 100%;
101
+ background: #333;
102
+ color: #fc0;
103
+ text-align: center;
104
+ text-transform: uppercase;
105
+ font-size: 14px;
106
+ font-weight: 800;
107
+ padding: 5px;
108
+ border-radius: 5px;
109
+ }
110
+
111
+ .mobile-nav .current a {
112
+ background: #fc0;
113
+ color: #222;
114
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 1px 5px rgba(0,0,0,.5);
115
+ text-shadow: 0 1px 0 rgba(255,255,255,.3);
116
+ }
117
+
118
+ .mobile-nav li {
119
+ display: table-cell;
120
+ width: 25%;
121
+ padding: 8px;
122
+ }
123
+
124
+ @media (max-width: 768px){
125
+ .main-nav ul {
126
+ text-align: right;
127
+ }
128
+ }
129
+ @media (max-width: 830px){
130
+ .main-nav .show-on-mobiles {
131
+ display: inline;
132
+ }
133
+ .main-nav .hide-on-mobiles {
134
+ display: none;
135
+ }
136
+ }
137
+
138
+ /* Footer */
139
+
140
+ body > footer {
141
+ background: #222;
142
+ font-size: 16px;
143
+ padding-bottom: 5px;
144
+ color: #888;
145
+ margin-top: 40px;
146
+ }
147
+
148
+ body > footer a {
149
+ color: #fff;
150
+ }
151
+
152
+ body > footer .align-right p, body > footer img {
153
+ display: inline-block;
154
+ }
155
+
156
+ body > footer img {
157
+ position: relative;
158
+ top: 8px;
159
+ margin-left: 5px;
160
+ width: 100px;
161
+ height: 30px;
162
+ opacity: .8;
163
+ padding: 1px;
164
+ -webkit-transition: opacity .2s;
165
+ -moz-transition: opacity .2s;
166
+ transition: opacity .2s;
167
+ }
168
+
169
+ body > footer a:hover img {
170
+ opacity: 1;
171
+ }
172
+
173
+ @media (max-width: 568px){
174
+ footer .one-third p {
175
+ margin-bottom: 0;
176
+ }
177
+ footer .two-thirds p {
178
+ margin-top: -20px;
179
+ }
180
+ }
181
+
182
+ /* Intro */
183
+
184
+ .intro .unit {
185
+ padding: 10px 0 40px;
186
+ }
187
+
188
+ .intro p {
189
+ font-size: 1.75em;
190
+ line-height: 1em;
191
+ margin: 0;
192
+ }
193
+
194
+ @media (min-width: 569px){
195
+ .intro p {
196
+ font-size: 3.2em;
197
+ }
198
+ }
199
+
200
+ /* Quickstart */
201
+
202
+ .quickstart {
203
+ background: #3F1F1F;
204
+ color: #fff;
205
+ margin: 60px 0;
206
+ box-shadow: inset 0 3px 10px rgba(0,0,0,.4);
207
+ }
208
+
209
+ .quickstart .content {
210
+ padding: 0px 0;
211
+ }
212
+
213
+ .quickstart h4 {
214
+ font-size: 24px;
215
+ line-height: 24px;
216
+ margin-top: 20px;
217
+ text-shadow: 0 1px 3px rgba(0,0,0,.8);
218
+ }
219
+
220
+ .quickstart .code {
221
+ font-size: 12px;
222
+ display: block;
223
+ margin: 0 0 -30px;
224
+ }
225
+
226
+ @media (min-width: 768px){
227
+ .quickstart .code {
228
+ font-size: 18px;
229
+ margin: -30px 0;
230
+ float: right;
231
+ }
232
+ .quickstart h4 {
233
+ margin: 50px 0 0;
234
+ text-align: center;
235
+ }
236
+ }
237
+
238
+ /* Code */
239
+
240
+ .quickstart .code {
241
+ display: block;
242
+ padding: 0;
243
+ font-family: Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
244
+ line-height: 1.3em;
245
+ }
246
+
247
+ .quickstart .code .title {
248
+ display: block;
249
+ text-align: center;
250
+ margin: 0 20px;
251
+ padding: 5px 0;
252
+ border-radius: 5px 5px 0 0;
253
+ box-shadow: 0 3px 10px rgba(0,0,0,.5);
254
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
255
+ font-size: 16px;
256
+ font-weight: normal;
257
+ color: #444;
258
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
259
+ background: #f7f7f7;
260
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZjdmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjclIiBzdG9wLWNvbG9yPSIjY2ZjZmNmIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2FhYWFhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
261
+ background: -moz-linear-gradient(top, #f7f7f7 0%, #cfcfcf 7%, #aaaaaa 100%);
262
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(7%,#cfcfcf), color-stop(100%,#aaaaaa));
263
+ background: -webkit-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
264
+ background: -o-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
265
+ background: -ms-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
266
+ background: linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
267
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#aaaaaa',GradientType=0 );
268
+ border-bottom: 1px solid #111;
269
+ }
270
+
271
+ .quickstart .code .shell {
272
+ padding: 20px;
273
+ text-shadow: none;
274
+ margin: 0 20px;
275
+ background: #3d3d3d;
276
+ border-radius: 0 0 5px 5px;
277
+ box-shadow: 0 5px 30px rgba(0,0,0,.3);
278
+ }
279
+
280
+ .quickstart .code .line {
281
+ display: block;
282
+ margin: 0;
283
+ padding: 0;
284
+ }
285
+
286
+ .quickstart .code .line span {
287
+ display: inline-block;
288
+ }
289
+
290
+ .quickstart .code .path {
291
+ color: #87ceeb;
292
+ }
293
+
294
+ .quickstart .code .prompt {
295
+ color: #cd5c5c;
296
+ }
297
+
298
+ .quickstart .code .command {
299
+ color: #f0e68c;
300
+ }
301
+
302
+ .quickstart .code .output {
303
+ color: #888;
304
+ }
305
+
306
+ /* Free Hosting */
307
+
308
+ .free-hosting .pane {
309
+ background: #444;
310
+ border-radius: 10px;
311
+ text-shadow: none;
312
+ position: relative;
313
+ padding: 0 20px 30px;
314
+ }
315
+
316
+ .free-hosting img {
317
+ margin: -30px 0 0;
318
+ width: 180px;
319
+ height: 150px;
320
+ }
321
+
322
+ .free-hosting h2 {
323
+ font-size: 28px;
324
+ }
325
+
326
+ .free-hosting p,
327
+ .free-hosting a {
328
+ font-size: 16px;
329
+ }
330
+
331
+ .free-hosting p {
332
+ margin: .75em 0;
333
+ }
334
+
335
+ @media (min-width: 768px){
336
+ .free-hosting img {
337
+ float: left;
338
+ margin: -20px -30px -30px -50px;
339
+ width: 300px;
340
+ height: 251px;
341
+ }
342
+ .free-hosting .pane-content {
343
+ margin-top: 35px;
344
+ padding-right: 30px;
345
+ }
346
+ .free-hosting p,
347
+ .free-hosting a {
348
+ font-size: 18px;
349
+ }
350
+ .free-hosting .pane:after {
351
+ content: " ";
352
+ float: right;
353
+ background: url(../img/footer-arrow.png) top left no-repeat;
354
+ width: 73px;
355
+ height: 186px;
356
+ position: absolute;
357
+ right: 0;
358
+ bottom: -30px;
359
+ }
360
+ }
361
+
362
+ /* Article - Used for both docs and news */
363
+
364
+
365
+ article {
366
+ background: #444;
367
+ border-radius: 10px;
368
+ padding: 20px;
369
+ margin: 0 10px;
370
+ box-shadow: 0 3px 10px rgba(0,0,0,.1);
371
+ font-size: 16px;
372
+ }
373
+
374
+ @media (max-width: 480px){
375
+ article ul {
376
+ padding-left: 20px;
377
+ }
378
+ }
379
+
380
+ @media (max-width: 568px){
381
+ article {
382
+ margin: 0;
383
+ }
384
+ }
385
+
386
+ @media (min-width: 768px){
387
+ article {
388
+ padding: 40px 40px 30px;
389
+ font-size: 21px;
390
+ }
391
+ }
392
+
393
+ /* Right-side nav - used by both docs and news */
394
+
395
+ aside {
396
+ padding-top: 30px;
397
+ }
398
+
399
+ aside h4 {
400
+ text-transform: uppercase;
401
+ font-size: 14px;
402
+ font-weight: 700;
403
+ padding: 0 0 10px 30px;
404
+ margin-left: -30px;
405
+ display: inline-block;
406
+ border-bottom: 1px solid #c00;
407
+ }
408
+
409
+ aside ul {
410
+ padding-left: 0;
411
+ }
412
+
413
+ aside ul:first-child {
414
+ margin-top: 0;
415
+ }
416
+
417
+ aside li {
418
+ list-style-type: none;
419
+ }
420
+
421
+ aside li a {
422
+ font-size: 16px;
423
+ position: relative
424
+ }
425
+
426
+ aside li.current a:before {
427
+ content: "";
428
+ border-color: transparent transparent transparent #444;
429
+ border-style: solid;
430
+ border-width: 10px;
431
+ width: 0;
432
+ height: 0;
433
+ position: absolute;
434
+ top: 0;
435
+ left: -30px;
436
+ }
437
+
438
+ /* Documentation */
439
+
440
+ .docs article {
441
+ min-height: 800px;
442
+ }
443
+
444
+ .docs .content {
445
+ padding: 0;
446
+ }
447
+
448
+ .section-nav {
449
+ text-align: center;
450
+ padding-top: 40px;
451
+ position: relative;
452
+ background: url(../img/article-footer.png) top center no-repeat;
453
+ margin: 40px -20px 10px;
454
+ }
455
+
456
+ .section-nav > div {
457
+ width: 49.5%;
458
+ }
459
+
460
+ .section-nav a, .section-nav span {
461
+ color: #fff;
462
+ font-size: 16px;
463
+ text-transform: uppercase;
464
+ font-weight: 700;
465
+ padding: 8px 12px 10px;
466
+ border-radius: 5px;
467
+ /*border: 1px solid #333;*/
468
+ box-shadow: 0 1px 3px rgba(0,0,0,.3), inset 0 1px 1px rgba(255,255,255,.5);
469
+ background: #777;
470
+ }
471
+
472
+ .section-nav a:hover {
473
+ color: #fff;
474
+ background: #888;
475
+ }
476
+
477
+ .section-nav .next, .section-nav .prev {
478
+ position: relative;
479
+ }
480
+
481
+ .section-nav .next:after, .section-nav .prev:before {
482
+ font-size: 36px;
483
+ color: #222;
484
+ font-weight: 800;
485
+ text-shadow: 0 1px 0 rgba(255,255,255,.4);
486
+ position: absolute;
487
+ top: -7px;
488
+ }
489
+
490
+ .section-nav .next:after {
491
+ content: "›";
492
+ right: 10px;
493
+ }
494
+
495
+ .section-nav .prev:before {
496
+ content: "‹";
497
+ left: 10px;
498
+ }
499
+
500
+ .section-nav .prev, .section-nav .prev:hover {
501
+ /*float: left;*/
502
+ padding-left: 30px;
503
+ }
504
+
505
+ .section-nav .next, .section-nav .next:hover {
506
+ /*float: right;*/
507
+ padding-right: 30px;
508
+ }
509
+
510
+ .section-nav .disabled {
511
+ opacity: .5;
512
+ /*filter: alpha*/
513
+ cursor: default;
514
+ }
515
+
516
+ .docs-nav-mobile select {
517
+ width: 100%;
518
+ }
519
+
520
+ /* News */
521
+
522
+ article h2:first-child {
523
+ margin-top: 0;
524
+ }
525
+
526
+ .post-category,
527
+ .post-meta {
528
+ display: inline-block;
529
+ vertical-align: middle;
530
+ font-size: .8em;
531
+ }
532
+
533
+ .post-category {
534
+ display: inline-block;
535
+ margin-left: -30px;
536
+ padding: 6px 10px 8px;
537
+ padding-left: 50px;
538
+ border-radius: 0 5px 5px 0;
539
+ position: relative;
540
+ box-shadow: 0 1px 5px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(0,0,0,.3);
541
+ background: #9e2812;
542
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzllMjgxMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM2ZjBkMGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
543
+ background: -moz-linear-gradient(top, #9e2812 0%, #6f0d0d 100%);
544
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#9e2812), color-stop(100%,#6f0d0d));
545
+ background: -webkit-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
546
+ background: -o-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
547
+ background: -ms-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
548
+ background: linear-gradient(to bottom, #9e2812 0%,#6f0d0d 100%);
549
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e2812', endColorstr='#6f0d0d',GradientType=0 );
550
+ }
551
+
552
+ .label {
553
+ float: left;
554
+ text-transform: uppercase;
555
+ font-weight: bold;
556
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
557
+ }
558
+
559
+ @media (max-width: 568px){
560
+ .post-category {
561
+ padding-left: 30px;
562
+ }
563
+ }
564
+
565
+ @media (min-width: 768px){
566
+ .post-category {
567
+ margin-left: -50px;
568
+ }
569
+ }
570
+
571
+ .post-category:before {
572
+ content: "";
573
+ position: absolute;
574
+ top: -10px;
575
+ left: 0px;
576
+ border-color: transparent #6f0d0d #6f0d0d transparent;
577
+ border-style: solid;
578
+ border-width: 5px;
579
+ width: 0;
580
+ height: 0;
581
+ }
582
+
583
+ .avatar {
584
+ width: 24px;
585
+ height: 24px;
586
+ border-radius: 3px;
587
+ display: inline-block;
588
+ vertical-align: middle;
589
+ }
590
+
591
+ .post-meta {
592
+ padding: 5px 0;
593
+ color: #aaa;
594
+ font-weight: 600;
595
+ text-shadow: 0 -1px 0 #000;
596
+ }
597
+
598
+ .post-date,
599
+ .post-author {
600
+ margin-left: 10px;
601
+ }
602
+
603
+ .news article + article {
604
+ margin-top: -10px;
605
+ border-radius: 0 0 10px 10px;
606
+ border-top: 1px solid #555;
607
+ box-shadow: 0 -1px 0 #2f2f2f;
608
+ }
609
+
610
+ /* Code Highlighting */
611
+
612
+
613
+ pre, code {
614
+ white-space: pre;
615
+ display: inline-block;
616
+ margin: 0;
617
+ padding: 0;
618
+ font-family: Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
619
+ font-size: 14px;
620
+ padding: 0 .5em;
621
+ line-height: 1.8em;
622
+ }
623
+
624
+ @media (min-width: 768px){
625
+ pre, code {
626
+ font-size: 16px;
627
+ }
628
+ }
629
+
630
+ .highlight, p > pre, p > code, p > nobr > code, li > code, h5 > code, .note > code {
631
+ background: #333;
632
+ color: #fff;
633
+ border-radius: 5px;
634
+ box-shadow: inset 0 1px 10px rgba(0,0,0,.3),
635
+ 0 1px 0 rgba(255,255,255,.1),
636
+ 0 -1px 0 rgba(0,0,0,.5);
637
+ }
638
+
639
+ .note code {
640
+ background-color: rgba(0,0,0,0.2);
641
+ margin-left: 2.5px;
642
+ margin-right: 2.5px;
643
+ font-size: 0.8em;
644
+ }
645
+
646
+ .highlight {
647
+ padding: 10px 0;
648
+ width: 100%;
649
+ overflow: auto;
650
+ }
651
+
652
+ /* HTML Elements */
653
+
654
+ h1, h2, h3, h4, h5, h6 {
655
+ margin: 0;
656
+ }
657
+
658
+ a {
659
+ color: #fc0;
660
+ text-decoration: none;
661
+ transition: all .25s;
662
+ -moz-transition: all .25s;
663
+ -webkit-transition: all .25s;
664
+ }
665
+
666
+ a:hover {
667
+ color: #f90;
668
+ }
669
+
670
+ strong {
671
+ font-weight: 700;
672
+ }
673
+
674
+ p {
675
+ line-height: 1.5em;
676
+ }
677
+
678
+ .left { float: left; }
679
+ .right { float: right; }
680
+ .align-right { text-align: right; }
681
+ .align-left { text-align: left; }
682
+ .align-center { text-align: center; }
683
+
684
+ /* Article HTML */
685
+
686
+ article h2,
687
+ article h3,
688
+ article h4,
689
+ article h5,
690
+ article h6 {
691
+ margin: 1em 0;
692
+ }
693
+
694
+ article h4 {
695
+ color: #fff;
696
+ }
697
+
698
+ h5, h6 {
699
+ font-size: 1em;
700
+ font-style: italic;
701
+ }
702
+
703
+ article ul li p {
704
+ margin: 0;
705
+ }
706
+
707
+ article ul li, article ol li {
708
+ line-height: 1.5em;
709
+ margin-bottom: 0.5em;
710
+ }
711
+
712
+ article ul li blockquote {
713
+ margin: 10px 0;
714
+ }
715
+
716
+ blockquote {
717
+ border-left: 2px solid #777;
718
+ padding-left: 20px;
719
+ font-style: italic;
720
+ font-size: 18px;
721
+ font-weight: 500;
722
+ }
723
+
724
+
725
+ /* Tables */
726
+
727
+ table {
728
+ width: 100%;
729
+ background: #555;
730
+ margin: .5em 0;
731
+ border-radius: 5px;
732
+ box-shadow: 0 1px 3px rgba(0,0,0,.3);
733
+ }
734
+
735
+ thead {
736
+ border-top-left-radius: 5px;
737
+ border-top-right-radius: 5px;
738
+ color: #fff;
739
+ background: #3a3a3a;
740
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzNhM2EzYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxZTFlMWUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
741
+ background: -moz-linear-gradient(top, #3a3a3a 0%, #1e1e1e 100%);
742
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3a3a3a), color-stop(100%,#1e1e1e));
743
+ background: -webkit-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
744
+ background: -o-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
745
+ background: -ms-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
746
+ background: linear-gradient(to bottom, #3a3a3a 0%,#1e1e1e 100%);
747
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a3a3a', endColorstr='#1e1e1e',GradientType=0 );
748
+ }
749
+
750
+ thead th {
751
+ position: relative;
752
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
753
+ }
754
+
755
+ thead th:first-child {
756
+ border-top-left-radius: 5px;
757
+ }
758
+
759
+ thead th:last-child {
760
+ border-top-right-radius: 5px;
761
+ }
762
+
763
+ td {
764
+ padding: .5em .75em;
765
+ }
766
+
767
+ td p {
768
+ margin: 0;
769
+ }
770
+
771
+ th {
772
+ text-transform: uppercase;
773
+ font-size: 16px;
774
+ padding: .5em .75em;
775
+ text-shadow: 0 -1px 0 rgba(0,0,0,.9);
776
+ color: #888;
777
+ }
778
+
779
+ tbody td {
780
+ border-top: 1px solid rgba(0,0,0,.1);
781
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
782
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
783
+ background: -moz-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
784
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0.1)), color-stop(100%,rgba(255,255,255,0)));
785
+ background: -webkit-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
786
+ background: -o-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
787
+ background: -ms-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
788
+ background: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
789
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1affffff', endColorstr='#00ffffff',GradientType=0 );
790
+ }
791
+
792
+ td p {
793
+ font-size: 16px;
794
+ }
795
+
796
+ td p code {
797
+ font-size: 14px;
798
+ }
799
+
800
+ code.option, th .option, code.filter, th .filter {
801
+ color: #50B600;
802
+ }
803
+
804
+ code.flag, th .flag, code.output, th .output {
805
+ color: #049DCE;
806
+ }
807
+
808
+ code.option, code.flag, code.filter, code.output {
809
+ margin-bottom: 2px;
810
+ }
811
+
812
+ /* Note types */
813
+
814
+ .note {
815
+ margin: 30px 0;
816
+ margin-left: -30px;
817
+ padding: 20px 20px 24px;
818
+ padding-left: 50px;
819
+ border-radius: 0 5px 5px 0;
820
+ position: relative;
821
+ box-shadow: 0 1px 5px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(0,0,0,.3);
822
+ background: #7e6d42;
823
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdlNmQ0MiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM1YzRlMzUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
824
+ background: -moz-linear-gradient(top, #7e6d42 0%, #5c4e35 100%);
825
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7e6d42), color-stop(100%,#5c4e35));
826
+ background: -webkit-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
827
+ background: -o-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
828
+ background: -ms-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
829
+ background: linear-gradient(to bottom, #7e6d42 0%,#5c4e35 100%);
830
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7e6d42', endColorstr='#5c4e35',GradientType=0 );
831
+ }
832
+
833
+ @media (max-width: 568px){
834
+ .note {
835
+ margin-right: -30px;
836
+ }
837
+ }
838
+
839
+ @media (min-width: 768px){
840
+ .note {
841
+ margin-left: -50px;
842
+ }
843
+ }
844
+
845
+ .note:before {
846
+ content: "";
847
+ position: absolute;
848
+ top: -10px;
849
+ left: 0px;
850
+ border-color: transparent #222 #222 transparent;
851
+ border-style: solid;
852
+ border-width: 5px;
853
+ width: 0;
854
+ height: 0;
855
+ }
856
+
857
+ .note h5, .note p {
858
+ margin: 0;
859
+ color: #fff;
860
+ }
861
+
862
+ .note h5 {
863
+ line-height: 1.5em;
864
+ font-weight: 800;
865
+ font-style: normal;
866
+ }
867
+
868
+ .note p {
869
+ font-weight: 400;
870
+ font-size: .75em;
871
+ }
872
+
873
+ .info {
874
+ background: #0389aa;
875
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAzODlhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDYxN2YiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
876
+ background: -moz-linear-gradient(top, #0389aa 0%, #00617f 100%);
877
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#0389aa), color-stop(100%,#00617f));
878
+ background: -webkit-linear-gradient(top, #0389aa 0%,#00617f 100%);
879
+ background: -o-linear-gradient(top, #0389aa 0%,#00617f 100%);
880
+ background: -ms-linear-gradient(top, #0389aa 0%,#00617f 100%);
881
+ background: linear-gradient(to bottom, #0389aa 0%,#00617f 100%);
882
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0389aa', endColorstr='#00617f',GradientType=0 );
883
+ }
884
+
885
+ .warning {
886
+ background: #9e2812;
887
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzllMjgxMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM2ZjBkMGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
888
+ background: -moz-linear-gradient(top, #9e2812 0%, #6f0d0d 100%);
889
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#9e2812), color-stop(100%,#6f0d0d));
890
+ background: -webkit-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
891
+ background: -o-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
892
+ background: -ms-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
893
+ background: linear-gradient(to bottom, #9e2812 0%,#6f0d0d 100%);
894
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e2812', endColorstr='#6f0d0d',GradientType=0 );
895
+ }
896
+
897
+ .info:before {
898
+ border-color: transparent #00617f #00617f transparent;
899
+ }
900
+
901
+ .warning:before {
902
+ border-color: transparent #6f0d0d #6f0d0d transparent;
903
+ }
904
+
905
+ .note:after {
906
+ content: "★";
907
+ color: #fc0;
908
+ position: absolute;
909
+ top: 14px;
910
+ left: 14px;
911
+ font-size: 28px;
912
+ font-weight: bold;
913
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
914
+ }
915
+
916
+ .info:after {
917
+ content: "ⓘ";
918
+ color: #fff;
919
+ position: absolute;
920
+ top: 15px;
921
+ left: 15px;
922
+ font-size: 28px;
923
+ font-weight: bold;
924
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
925
+ }
926
+
927
+ .warning:after {
928
+ content: "‼";
929
+ color: #fc0;
930
+ position: absolute;
931
+ top: 15px;
932
+ left: 15px;
933
+ font-size: 32px;
934
+ font-weight: bold;
935
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
936
+ }
937
+
938
+ /* Responsive tables */
939
+
940
+ @media (max-width: 768px){
941
+ .mobile-side-scroller {
942
+ overflow-x: scroll;
943
+ margin: 0 -40px;
944
+ padding: 0 10px;
945
+ }
946
+ }