jekyll 1.0.0.rc1 → 1.0.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.
- data/CONTRIBUTING.md +1 -1
- data/History.txt +15 -1
- data/Rakefile +0 -4
- data/bin/jekyll +3 -3
- data/features/pagination.feature +5 -5
- data/features/step_definitions/jekyll_steps.rb +1 -1
- data/jekyll.gemspec +9 -6
- data/lib/jekyll.rb +1 -2
- data/lib/jekyll/commands/new.rb +4 -0
- data/lib/jekyll/configuration.rb +3 -1
- data/lib/jekyll/converters/markdown/redcarpet_parser.rb +1 -0
- data/lib/jekyll/convertible.rb +66 -36
- data/lib/jekyll/deprecator.rb +9 -0
- data/lib/jekyll/filters.rb +17 -4
- data/lib/jekyll/generators/pagination.rb +17 -5
- data/lib/jekyll/logger.rb +3 -1
- data/lib/jekyll/page.rb +1 -13
- data/lib/jekyll/post.rb +67 -49
- data/lib/jekyll/site.rb +3 -3
- data/lib/jekyll/tags/highlight.rb +2 -0
- data/lib/jekyll/tags/post_url.rb +25 -7
- data/lib/site_template/.gitignore +1 -0
- data/lib/site_template/_config.yml +1 -0
- data/lib/site_template/_layouts/default.html +44 -36
- data/lib/site_template/_layouts/post.html +3 -0
- data/lib/site_template/css/main.css +165 -0
- data/site/_includes/docs_contents.html +4 -1
- data/site/_includes/docs_contents_mobile.html +36 -0
- data/site/_includes/footer.html +10 -10
- data/site/_includes/header.html +7 -15
- data/site/_includes/primary-nav-items.html +11 -0
- data/site/_includes/top.html +2 -1
- data/site/_layouts/default.html +1 -1
- data/site/_layouts/docs.html +4 -2
- data/site/_posts/2012-07-01-configuration.md +18 -8
- data/site/_posts/2012-07-01-contributing.md +22 -6
- data/site/_posts/2012-07-01-extras.md +3 -2
- data/site/_posts/2012-07-01-frontmatter.md +7 -2
- data/site/_posts/2012-07-01-home.md +4 -4
- data/site/_posts/2012-07-01-installation.md +6 -6
- data/site/_posts/2012-07-01-migrations.md +64 -23
- data/site/_posts/2012-07-01-pages.md +2 -2
- data/site/_posts/2012-07-01-pagination.md +6 -1
- data/site/_posts/2012-07-01-permalinks.md +6 -0
- data/site/_posts/2012-07-01-plugins.md +9 -1
- data/site/_posts/2012-07-01-resources.md +1 -4
- data/site/_posts/2012-07-01-structure.md +3 -1
- data/site/_posts/2012-07-01-templates.md +2 -1
- data/site/_posts/2012-07-01-troubleshooting.md +20 -2
- data/site/_posts/2012-07-01-upgrading.md +104 -0
- data/site/_posts/2012-07-01-usage.md +1 -1
- data/site/_posts/2012-07-01-variables.md +18 -9
- data/site/css/gridism.css +110 -0
- data/site/css/style.css +236 -101
- data/site/img/footer-logo.png +0 -0
- data/site/img/octojekyll.png +0 -0
- data/site/index.html +51 -43
- data/test/helper.rb +1 -0
- data/test/source/_posts/es/2008-11-21-nested.textile +8 -0
- data/test/test_convertible.rb +1 -1
- data/test/test_filters.rb +34 -11
- data/test/test_generated_site.rb +13 -2
- data/test/test_kramdown.rb +4 -2
- data/test/test_pager.rb +4 -2
- data/test/test_post.rb +2 -2
- data/test/test_site.rb +7 -6
- data/test/test_tags.rb +30 -0
- metadata +12 -12
- data/lib/site_template/css/screen.css +0 -189
- data/lib/site_template/images/.gitkeep +0 -0
- data/lib/site_template/images/rss.png +0 -0
- data/site/css/grid.css +0 -62
@@ -1,4 +1,4 @@
|
|
1
|
-
<div class="
|
1
|
+
<div class="unit one-fifth hide-on-mobiles">
|
2
2
|
<aside>
|
3
3
|
<h4>Getting Started</h4>
|
4
4
|
<ul>
|
@@ -77,6 +77,9 @@
|
|
77
77
|
<li class="{% if page.title == "Resources" %}current{% endif %}">
|
78
78
|
<a href="{{ site.url }}/docs/resources">Resources</a>
|
79
79
|
</li>
|
80
|
+
<li class="{% if page.title == "Upgrading" %}current{% endif %}">
|
81
|
+
<a href="{{ site.url }}/docs/upgrading">Upgrading</a>
|
82
|
+
</li>
|
80
83
|
</ul>
|
81
84
|
</aside>
|
82
85
|
</div>
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<div class="docs-nav-mobile unit whole show-on-mobiles">
|
2
|
+
<select onchange="if (this.value) window.location.href=this.value">
|
3
|
+
<option value="">Navigate the docs…</option>
|
4
|
+
<optgroup label="Getting started">
|
5
|
+
<option value="{{ site.url }}/docs/home">Welcome</option>
|
6
|
+
<option value="{{ site.url }}/docs/installation">Installation</option>
|
7
|
+
<option value="{{ site.url }}/docs/usage">Basic Usage</option>
|
8
|
+
<option value="{{ site.url }}/docs/structure">Directory structure</option>
|
9
|
+
<option value="{{ site.url }}/docs/configuration">Configuration</option>
|
10
|
+
</optgroup>
|
11
|
+
<optgroup label="Your Content">
|
12
|
+
<option value="{{ site.url }}/docs/frontmatter">Front-matter</option>
|
13
|
+
<option value="{{ site.url }}/docs/posts">Writing posts</option>
|
14
|
+
<option value="{{ site.url }}/docs/pages">Creating pages</option>
|
15
|
+
<option value="{{ site.url }}/docs/variables">Variables</option>
|
16
|
+
<option value="{{ site.url }}/docs/migrations">Blog migrations</option>
|
17
|
+
</optgroup>
|
18
|
+
<optgroup label="Customization">
|
19
|
+
<option value="{{ site.url }}/docs/templates">Templates</option>
|
20
|
+
<option value="{{ site.url }}/docs/permalinks">Permalinks</option>
|
21
|
+
<option value="{{ site.url }}/docs/pagination">Pagination</option>
|
22
|
+
<option value="{{ site.url }}/docs/plugins">Plugins</option>
|
23
|
+
<option value="{{ site.url }}/docs/extras">Extras</option>
|
24
|
+
</optgroup>
|
25
|
+
<optgroup label="Deployment">
|
26
|
+
<option value="{{ site.url }}/docs/github-pages">GitHub Pages</option>
|
27
|
+
<option value="{{ site.url }}/docs/deployment-methods">Other methods</option>
|
28
|
+
</optgroup>
|
29
|
+
<optgroup label="Miscellaneous">
|
30
|
+
<option value="{{ site.url }}/docs/contributing">Contributing</option>
|
31
|
+
<option value="{{ site.url }}/docs/troubleshooting">Troubleshooting</option>
|
32
|
+
<option value="{{ site.url }}/docs/sites">Sites using Jekyll</option>
|
33
|
+
<option value="{{ site.url }}/docs/resources">Resources</option>
|
34
|
+
</optgroup>
|
35
|
+
<select>
|
36
|
+
</div>
|
data/site/_includes/footer.html
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
<footer>
|
2
|
-
<div class="
|
3
|
-
<div class="
|
4
|
-
<p>By <a href="http://tom.preston-werner.com">Tom Preston-Werner</a>, <a href="http://quaran.to/">Nick Quaranto</a>, and many more <a href="https://github.com/mojombo/jekyll/graphs/contributors">awesome
|
2
|
+
<div class="grid">
|
3
|
+
<div class="unit one-third center-on-mobiles">
|
4
|
+
<p>By <a href="http://tom.preston-werner.com">Tom Preston-Werner</a>, <a href="http://quaran.to/">Nick Quaranto</a>, and many more <a href="https://github.com/mojombo/jekyll/graphs/contributors">awesome contributors</a>.</p>
|
5
5
|
</div>
|
6
|
-
<div class="
|
7
|
-
<p>
|
8
|
-
|
9
|
-
<
|
10
|
-
|
6
|
+
<div class="unit two-thirds align-right center-on-mobiles">
|
7
|
+
<p>
|
8
|
+
Proudly hosted by
|
9
|
+
<a href="https://github.com">
|
10
|
+
<img src="{{ site.url }}/img/footer-logo.png" alt="GitHub • Social coding">
|
11
|
+
</a>
|
12
|
+
</p>
|
11
13
|
</div>
|
12
|
-
<div class="clear"></div>
|
13
14
|
</div>
|
14
15
|
</footer>
|
15
|
-
<div class="clear"></div>
|
data/site/_includes/header.html
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
<header>
|
2
|
-
<
|
3
|
-
|
2
|
+
<nav class="mobile-nav show-on-mobiles">
|
3
|
+
{% include primary-nav-items.html %}
|
4
|
+
</nav>
|
5
|
+
<div class="grid">
|
6
|
+
<div class="unit one-third center-on-mobiles">
|
4
7
|
<h1>
|
5
8
|
<a href="{{ site.url }}/">
|
6
9
|
<span>Jekyll</span>
|
@@ -8,19 +11,8 @@
|
|
8
11
|
</a>
|
9
12
|
</h1>
|
10
13
|
</div>
|
11
|
-
<nav class="
|
12
|
-
|
13
|
-
<li {% if page.overview %}class="current"{% endif %}>
|
14
|
-
<a href="{{ site.url }}/">Overview</a>
|
15
|
-
</li>
|
16
|
-
<li {% unless page.overview %}class="current"{% endunless %}>
|
17
|
-
<a href="{{ site.url }}/docs">Documentation</a>
|
18
|
-
</li>
|
19
|
-
<li class="">
|
20
|
-
<a href="https://github.com/mojombo/jekyll">View on GitHub</a>
|
21
|
-
</li>
|
22
|
-
</ul>
|
14
|
+
<nav class="main-nav unit two-thirds hide-on-mobiles">
|
15
|
+
{% include primary-nav-items.html %}
|
23
16
|
</nav>
|
24
|
-
<div class="clear"></div>
|
25
17
|
</div>
|
26
18
|
</header>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<ul>
|
2
|
+
<li class="{% if page.overview %}current{% endif %}">
|
3
|
+
<a href="{{ site.url }}/">Overview</a>
|
4
|
+
</li>
|
5
|
+
<li class="{% unless page.overview %}current{% endunless %}">
|
6
|
+
<a href="{{ site.url }}/docs">Doc<span class="show-on-mobiles">s</span><span class="hide-on-mobiles">umentation</span></a>
|
7
|
+
</li>
|
8
|
+
<li class="">
|
9
|
+
<a href="https://github.com/mojombo/jekyll"><span class="hide-on-mobiles">View on </span>GitHub</a>
|
10
|
+
</li>
|
11
|
+
</ul>
|
data/site/_includes/top.html
CHANGED
@@ -3,10 +3,11 @@
|
|
3
3
|
<head>
|
4
4
|
<meta charset="UTF-8">
|
5
5
|
<title>{{ page.title }}</title>
|
6
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
7
|
<link href='http://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic' rel='stylesheet' type='text/css'>
|
7
8
|
<link href='http://fonts.googleapis.com/css?family=Arizonia' rel='stylesheet' type='text/css'>
|
8
9
|
<link rel="stylesheet" href="{{ site.url }}/css/normalize.css" />
|
9
|
-
<link rel="stylesheet" href="{{ site.url }}/css/
|
10
|
+
<link rel="stylesheet" href="{{ site.url }}/css/gridism.css" />
|
10
11
|
<link rel="stylesheet" href="{{ site.url }}/css/style.css" />
|
11
12
|
<link rel="stylesheet" href="{{ site.url }}/css/pygments.css" />
|
12
13
|
<link rel="icon" type="image/x-icon" href="{{ site.url }}/favicon.png" />
|
data/site/_layouts/default.html
CHANGED
data/site/_layouts/docs.html
CHANGED
@@ -3,9 +3,11 @@ layout: default
|
|
3
3
|
---
|
4
4
|
|
5
5
|
<section class="docs">
|
6
|
-
<div class="
|
6
|
+
<div class="grid">
|
7
7
|
|
8
|
-
|
8
|
+
{% include docs_contents_mobile.html %}
|
9
|
+
|
10
|
+
<div class="unit four-fifths">
|
9
11
|
<article>
|
10
12
|
<h1>{{ page.title }}</h1>
|
11
13
|
{{ content }}
|
@@ -19,6 +19,7 @@ The table below lists the available settings for Jekyll, and the various <code
|
|
19
19
|
class="option">options</code> (specifed in the configuration file) and <code
|
20
20
|
class="flag">flags</code> (specified on the command-line) that control them.
|
21
21
|
|
22
|
+
<div class="mobile-side-scroller">
|
22
23
|
<table>
|
23
24
|
<thead>
|
24
25
|
<tr>
|
@@ -99,9 +100,11 @@ class="flag">flags</code> (specified on the command-line) that control them.
|
|
99
100
|
</tr>
|
100
101
|
</tbody>
|
101
102
|
</table>
|
103
|
+
</div>
|
102
104
|
|
103
105
|
### Build Command Options
|
104
106
|
|
107
|
+
<div class="mobile-side-scroller">
|
105
108
|
<table>
|
106
109
|
<thead>
|
107
110
|
<tr>
|
@@ -169,6 +172,7 @@ class="flag">flags</code> (specified on the command-line) that control them.
|
|
169
172
|
</tr>
|
170
173
|
</tbody>
|
171
174
|
</table>
|
175
|
+
</div>
|
172
176
|
|
173
177
|
### Serve Command Options
|
174
178
|
|
@@ -176,6 +180,7 @@ In addition to the options below, the `serve` sub-command can accept any of the
|
|
176
180
|
for the `build` sub-command, which are then applied to the site build which occurs right
|
177
181
|
before your site is served.
|
178
182
|
|
183
|
+
<div class="mobile-side-scroller">
|
179
184
|
<table>
|
180
185
|
<thead>
|
181
186
|
<tr>
|
@@ -207,7 +212,7 @@ before your site is served.
|
|
207
212
|
<tr class='setting'>
|
208
213
|
<td>
|
209
214
|
<p class='name'><strong>Base URL</strong></p>
|
210
|
-
<p class='description'>Serve website
|
215
|
+
<p class='description'>Serve the website from the given base URL</p>
|
211
216
|
</td>
|
212
217
|
<td class="align-center">
|
213
218
|
<p><code class="option">baseurl: URL</code></p>
|
@@ -216,6 +221,7 @@ before your site is served.
|
|
216
221
|
</tr>
|
217
222
|
</tbody>
|
218
223
|
</table>
|
224
|
+
</div>
|
219
225
|
|
220
226
|
<div class="note warning">
|
221
227
|
<h5>Do not use tabs in configuration files</h5>
|
@@ -236,24 +242,28 @@ source: .
|
|
236
242
|
destination: ./_site
|
237
243
|
plugins: ./_plugins
|
238
244
|
layouts: ./_layouts
|
245
|
+
include: ['.htaccess']
|
246
|
+
exclude: []
|
239
247
|
keep_files: ['.git','.svn']
|
248
|
+
timezone: nil
|
240
249
|
|
241
250
|
future: true
|
242
|
-
|
251
|
+
show_drafts: nil
|
252
|
+
limit_posts: 0
|
253
|
+
pygments: true
|
243
254
|
|
244
|
-
markdown: maruku
|
245
255
|
permalink: date
|
246
|
-
include: ['.htaccess']
|
247
256
|
paginate_path: 'page:num'
|
248
257
|
|
249
|
-
|
250
|
-
|
258
|
+
markdown: maruku
|
259
|
+
markdown_ext: markdown,mkd,mkdn,md
|
260
|
+
textile_ext: textile
|
251
261
|
|
252
262
|
excerpt_separator: "\n\n"
|
253
263
|
|
254
264
|
safe: false
|
255
|
-
watch: false
|
256
|
-
server: false
|
265
|
+
watch: false # deprecated
|
266
|
+
server: false # deprecated
|
257
267
|
host: 0.0.0.0
|
258
268
|
port: 4000
|
259
269
|
baseurl: /
|
@@ -14,9 +14,9 @@ following in mind:
|
|
14
14
|
[RR](http://github.com/btakita/rr/tree/master).
|
15
15
|
* If it's a brand new feature, make sure to create a new
|
16
16
|
[Cucumber](https://github.com/cucumber/cucumber/) feature and reuse steps
|
17
|
-
where appropriate. Also, whipping up some documentation in your fork's
|
18
|
-
would be appreciated, and once merged it will
|
19
|
-
|
17
|
+
where appropriate. Also, whipping up some documentation in your fork's `site`
|
18
|
+
directory would be appreciated, and once merged it will also appear in
|
19
|
+
the next update of the main site.
|
20
20
|
* If your contribution adds or changes any Jekyll behavior, make sure to update
|
21
21
|
the documentation. It lives in `site/_posts`. If the docs are missing
|
22
22
|
information, please feel free to add it in. Great docs make a great project!
|
@@ -56,12 +56,28 @@ Workflow
|
|
56
56
|
Here's the most direct way to get your work merged into the project:
|
57
57
|
|
58
58
|
* Fork the project.
|
59
|
-
* Clone down your fork:
|
60
|
-
|
59
|
+
* Clone down your fork:
|
60
|
+
|
61
|
+
{% highlight bash %}
|
62
|
+
git clone git://github.com/<username>/jekyll.git
|
63
|
+
{% endhighlight %}
|
64
|
+
|
65
|
+
* Create a topic branch to contain your change:
|
66
|
+
|
67
|
+
{% highlight bash %}
|
68
|
+
git checkout -b my_awesome_feature
|
69
|
+
{% endhighlight %}
|
70
|
+
|
71
|
+
|
61
72
|
* Hack away, add tests. Not necessarily in that order.
|
62
73
|
* Make sure everything still passes by running `rake`.
|
63
74
|
* If necessary, rebase your commits into logical chunks, without errors.
|
64
|
-
* Push the branch up:
|
75
|
+
* Push the branch up:
|
76
|
+
|
77
|
+
{% highlight bash %}
|
78
|
+
git push origin my_awesome_feature
|
79
|
+
{% endhighlight %}
|
80
|
+
|
65
81
|
* Create a pull request against mojombo/jekyll and describe what your change
|
66
82
|
does and the why you think it should be merged.
|
67
83
|
|
@@ -41,8 +41,9 @@ $ pip install pygments
|
|
41
41
|
<p>
|
42
42
|
Homebrew doesn’t symlink the executables for you. For the Homebrew default
|
43
43
|
Cellar location and Python 2.7, be sure to add `/usr/local/share/python` to
|
44
|
-
your `PATH`. For more information, check out
|
45
|
-
|
44
|
+
your `PATH`. For more information, check out
|
45
|
+
<a href="https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python">the
|
46
|
+
Homebrew wiki</a>.
|
46
47
|
</p>
|
47
48
|
</div>
|
48
49
|
|
@@ -35,8 +35,10 @@ relies on.
|
|
35
35
|
|
36
36
|
## Predefined Global Variables
|
37
37
|
|
38
|
-
There are a number of predefined global variables that you can set in the
|
38
|
+
There are a number of predefined global variables that you can set in the
|
39
|
+
front-matter of a page or post.
|
39
40
|
|
41
|
+
<div class="mobile-side-scroller">
|
40
42
|
<table>
|
41
43
|
<thead>
|
42
44
|
<tr>
|
@@ -53,7 +55,7 @@ There are a number of predefined global variables that you can set in the front-
|
|
53
55
|
<p>
|
54
56
|
|
55
57
|
If set, this specifies the layout file to use. Use the layout file
|
56
|
-
name without file extension. Layout files must be placed in the
|
58
|
+
name without the file extension. Layout files must be placed in the
|
57
59
|
<code>_layouts</code> directory.
|
58
60
|
|
59
61
|
</p>
|
@@ -118,6 +120,7 @@ There are a number of predefined global variables that you can set in the front-
|
|
118
120
|
</tr>
|
119
121
|
</tbody>
|
120
122
|
</table>
|
123
|
+
</div>
|
121
124
|
|
122
125
|
|
123
126
|
## Custom Variables
|
@@ -141,6 +144,7 @@ title:
|
|
141
144
|
|
142
145
|
These are available out-of-the-box to be used in the front-matter for a post.
|
143
146
|
|
147
|
+
<div class="mobile-side-scroller">
|
144
148
|
<table>
|
145
149
|
<thead>
|
146
150
|
<tr>
|
@@ -162,3 +166,4 @@ These are available out-of-the-box to be used in the front-matter for a post.
|
|
162
166
|
</tr>
|
163
167
|
</tbody>
|
164
168
|
</table>
|
169
|
+
</div>
|
@@ -4,11 +4,11 @@ title: Welcome
|
|
4
4
|
next_section: installation
|
5
5
|
---
|
6
6
|
|
7
|
-
This site aims to be a comprehensive guide to Jekyll. We’ll cover
|
8
|
-
|
7
|
+
This site aims to be a comprehensive guide to Jekyll. We’ll cover topics such
|
8
|
+
as getting your site up and running, creating and managing your content,
|
9
9
|
customizing the way your site works and looks, deploying to various
|
10
|
-
environments,
|
11
|
-
of Jekyll itself.
|
10
|
+
environments, and give you some advice on participating in the future
|
11
|
+
development of Jekyll itself.
|
12
12
|
|
13
13
|
## So what is Jekyll, exactly?
|
14
14
|
|
@@ -8,7 +8,7 @@ next_section: usage
|
|
8
8
|
Getting Jekyll installed and ready-to-go should only take a few minutes. If it
|
9
9
|
ever becomes a pain in the ass, please [file an
|
10
10
|
issue](https://github.com/mojombo/jekyll/issues/new) (or submit a pull request)
|
11
|
-
describing the issue you encountered
|
11
|
+
describing the issue you encountered and how we might make the process easier.
|
12
12
|
|
13
13
|
### Requirements
|
14
14
|
|
@@ -39,11 +39,11 @@ simply run the following command to install Jekyll:
|
|
39
39
|
$ gem install jekyll
|
40
40
|
{% endhighlight %}
|
41
41
|
|
42
|
-
All Jekyll’s gem dependencies are automatically installed by the above
|
43
|
-
so you won’t have to worry about them at all. If you have problems
|
44
|
-
Jekyll, check out the [troubleshooting](../troubleshooting) page or
|
45
|
-
issue](https://github.com/mojombo/jekyll/issues/new) so the Jekyll
|
46
|
-
improve the experience for everyone.
|
42
|
+
All of Jekyll’s gem dependencies are automatically installed by the above
|
43
|
+
command, so you won’t have to worry about them at all. If you have problems
|
44
|
+
installing Jekyll, check out the [troubleshooting](../troubleshooting) page or
|
45
|
+
[report an issue](https://github.com/mojombo/jekyll/issues/new) so the Jekyll
|
46
|
+
community can improve the experience for everyone.
|
47
47
|
|
48
48
|
## Optional Extras
|
49
49
|
|
@@ -7,9 +7,9 @@ next_section: templates
|
|
7
7
|
|
8
8
|
If you’re switching to Jekyll from another blogging system, Jekyll’s importers
|
9
9
|
can help you with the move. Most methods listed on this page require read access
|
10
|
-
to the database to generate posts
|
11
|
-
`.markdown` posts in the `_posts` directory based on the entries in
|
12
|
-
system.
|
10
|
+
to the database from your old system to generate posts for Jekyll. Each method
|
11
|
+
generates `.markdown` posts in the `_posts` directory based on the entries in
|
12
|
+
the foreign system.
|
13
13
|
|
14
14
|
## Preparing for migrations
|
15
15
|
|
@@ -72,7 +72,11 @@ $ ruby -rubygems -e 'require "jekyll/migrators/wordpress";
|
|
72
72
|
Jekyll::WordPress.process("database", "user", "pass")'
|
73
73
|
{% endhighlight %}
|
74
74
|
|
75
|
-
If you are using Webfaction and have to set up an [SSH
|
75
|
+
If you are using Webfaction and have to set up an [SSH
|
76
|
+
tunnel](http://docs.webfaction.com/user-guide/databases.html?highlight=mysql#starting-an-ssh-tunnel-with-ssh),
|
77
|
+
be sure to make the hostname (`127.0.0.1`) explicit, otherwise MySQL may block
|
78
|
+
your access based on `localhost` and `127.0.0.1` not being equivalent in its
|
79
|
+
authentication system:
|
76
80
|
|
77
81
|
{% highlight bash %}
|
78
82
|
$ ruby -rubygems -e 'require "jekyll/migrators/wordpress";
|
@@ -81,15 +85,27 @@ $ ruby -rubygems -e 'require "jekyll/migrators/wordpress";
|
|
81
85
|
|
82
86
|
### Further Wordpress migration alternatives
|
83
87
|
|
84
|
-
While the above methods work, they do not import much of the metadata that is
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
88
|
+
While the above methods work, they do not import much of the metadata that is
|
89
|
+
usually stored in Wordpress posts and pages. If you need to export things like
|
90
|
+
pages, tags, custom fields, image attachments and so on, the following resources
|
91
|
+
might be useful to you:
|
92
|
+
|
93
|
+
- [Exitwp](https://github.com/thomasf/exitwp) is a configurable tool written in
|
94
|
+
Python for migrating one or more Wordpress blogs into Jekyll (Markdown) format
|
95
|
+
while keeping as much metadata as possible. Exitwp also downloads attachments
|
96
|
+
and pages.
|
97
|
+
- [A great
|
98
|
+
article](http://vitobotta.com/how-to-migrate-from-wordpress-to-jekyll/) with a
|
99
|
+
step-by-step guide for migrating a Wordpress blog to Jekyll while keeping most
|
100
|
+
of the structure and metadata.
|
101
|
+
- [wpXml2Jekyll](https://github.com/theaob/wpXml2Jekyll) is an executable
|
102
|
+
windows application for creating Markdown posts from your Wordpress XML file.
|
89
103
|
|
90
104
|
## Drupal
|
91
105
|
|
92
|
-
If you’re migrating from [Drupal](http://drupal.org), there is [a
|
106
|
+
If you’re migrating from [Drupal](http://drupal.org), there is [a
|
107
|
+
migrator](https://github.com/mojombo/jekyll/blob/master/lib/jekyll/migrators/drupal.rb)
|
108
|
+
for you too:
|
93
109
|
|
94
110
|
{% highlight bash %}
|
95
111
|
$ ruby -rubygems -e 'require "jekyll/migrators/drupal";
|
@@ -98,7 +114,9 @@ $ ruby -rubygems -e 'require "jekyll/migrators/drupal";
|
|
98
114
|
|
99
115
|
<div class="note warning">
|
100
116
|
<h5>Warning: Drupal Version Compatibility</h5>
|
101
|
-
<p>This migrator was written for Drupal 6.1 and may not work as expected
|
117
|
+
<p>This migrator was written for Drupal 6.1 and may not work as expected with
|
118
|
+
newer versions of Drupal. Please update it and send us a pull request if
|
119
|
+
necessary.</p>
|
102
120
|
</div>
|
103
121
|
|
104
122
|
## Movable Type
|
@@ -119,7 +137,7 @@ $ ruby -rubygems -e 'require "jekyll/migrators/typo";
|
|
119
137
|
Jekyll::Typo.process("database", "user", "pass")'
|
120
138
|
{% endhighlight %}
|
121
139
|
|
122
|
-
This code
|
140
|
+
This code has only been tested with Typo version 4+.
|
123
141
|
|
124
142
|
## TextPattern
|
125
143
|
|
@@ -130,7 +148,12 @@ $ ruby -rubygems -e 'require "jekyll/migrators/textpattern";
|
|
130
148
|
Jekyll::TextPattern.process("database_name", "username", "password", "hostname")'
|
131
149
|
{% endhighlight %}
|
132
150
|
|
133
|
-
You will need to run the above from the parent directory of your `_import`
|
151
|
+
You will need to run the above from the parent directory of your `_import`
|
152
|
+
folder. For example, if `_import` is located in `/path/source/_import`, you will
|
153
|
+
need to run this code from `/path/source`. The hostname defaults to `localhost`,
|
154
|
+
all other variables are required. You may need to adjust the code used to filter
|
155
|
+
entries. Left alone, it will attempt to pull all entries that are live or
|
156
|
+
sticky.
|
134
157
|
|
135
158
|
## Mephisto
|
136
159
|
|
@@ -150,11 +173,22 @@ $ ruby -rubygems -e 'require "jekyll/migrators/mephisto";
|
|
150
173
|
|
151
174
|
## Blogger (Blogspot)
|
152
175
|
|
153
|
-
To import posts from Blogger, see [this post about migrating from Blogger to
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
176
|
+
To import posts from Blogger, see [this post about migrating from Blogger to
|
177
|
+
Jekyll](http://coolaj86.info/articles/migrate-from-blogger-to-jekyll.html). If
|
178
|
+
that doesn’t work for you, you might want to try some of the following
|
179
|
+
alternatives:
|
180
|
+
|
181
|
+
- [@kennym](https://github.com/kennym) created a [little migration
|
182
|
+
script](https://gist.github.com/1115810), because the solutions in the
|
183
|
+
previous article didn't work out for him.
|
184
|
+
- [@ngauthier](https://github.com/ngauthier) created [another
|
185
|
+
importer](https://gist.github.com/1506614) that imports comments, and does so
|
186
|
+
via blogger’s archive instead of the RSS feed.
|
187
|
+
- [@juniorz](https://github.com/juniorz) created [yet another
|
188
|
+
importer](https://gist.github.com/1564581) that works for
|
189
|
+
[Octopress](http://octopress.org). It is like [@ngauthier’s
|
190
|
+
version](https://gist.github.com/1506614) but separates drafts from posts, as
|
191
|
+
well as importing tags and permalinks.
|
158
192
|
|
159
193
|
## Posterous
|
160
194
|
|
@@ -165,14 +199,17 @@ $ ruby -rubygems -e 'require "jekyll/migrators/posterous";
|
|
165
199
|
Jekyll::Posterous.process("my_email", "my_pass")'
|
166
200
|
{% endhighlight %}
|
167
201
|
|
168
|
-
For any other Posterous blog on your account, you will need to specify the
|
202
|
+
For any other Posterous blog on your account, you will need to specify the
|
203
|
+
`blog_id` for the blog:
|
169
204
|
|
170
205
|
{% highlight bash %}
|
171
206
|
$ ruby -rubygems -e 'require "jekyll/migrators/posterous";
|
172
207
|
Jekyll::Posterous.process("my_email", "my_pass", "blog_id")'
|
173
208
|
{% endhighlight %}
|
174
209
|
|
175
|
-
There is also an [alternative Posterous
|
210
|
+
There is also an [alternative Posterous
|
211
|
+
migrator](https://github.com/pepijndevos/jekyll/blob/patch-1/lib/jekyll/migrators/posterous.rb)
|
212
|
+
that maintains permalinks and attempts to import images too.
|
176
213
|
|
177
214
|
## Tumblr
|
178
215
|
|
@@ -183,9 +220,12 @@ $ ruby -rubygems -e 'require "jekyll/migrators/tumblr";
|
|
183
220
|
Jekyll::Tumblr.process("http://www.your_blog_url.com", true)'
|
184
221
|
{% endhighlight %}
|
185
222
|
|
186
|
-
There is also [a modified Tumblr
|
223
|
+
There is also [a modified Tumblr
|
224
|
+
migrator](https://github.com/stephenmcd/jekyll/blob/master/lib/jekyll/migrators/tumblr.rb)
|
225
|
+
that exports posts as Markdown and preserves post tags.
|
187
226
|
|
188
|
-
The migrator above requires the `json` gem and Python's `html2text` to be
|
227
|
+
The migrator above requires the `json` gem and Python's `html2text` to be
|
228
|
+
installed as follows:
|
189
229
|
|
190
230
|
{% highlight bash %}
|
191
231
|
$ gem install json
|
@@ -201,4 +241,5 @@ $ ruby -rubygems -e 'require "jekyll/migrators/tumblr";
|
|
201
241
|
|
202
242
|
## Other Systems
|
203
243
|
|
204
|
-
If you have a system
|
244
|
+
If you have a system for which there is currently no migrator, consider writing
|
245
|
+
one and sending us a pull request.
|