Commit Graph

2683 Commits

Author SHA1 Message Date
Fabio Neves
12a19eaf3a Merge branch 'master' of git://github.com/mojombo/jekyll 2012-12-26 14:23:32 -05:00
Tom Preston-Werner
d58a0c1088 Release 0.12.0 2012-12-22 16:46:30 -07:00
Tom Bell
b9da30bc8f Remove migrators 2012-12-22 17:49:33 +00:00
Tom Bell
a151a16f09 Remove command options from default config
Removing command line options from the config is a path towards cleaning up the
configuration file and not including options which don't really belong there.
2012-12-19 18:23:34 +00:00
Tom Bell
b7944c5274 Add initial MigrateCommand
Not all migrators can actually be calld from the comand line. Some require
options which are not passed in and have to be called by other means.
2012-12-19 17:50:21 +00:00
Nat Welch
934495b272 Adds some random docs for stuff I saw while skimming the code. 2012-12-18 22:42:42 -08:00
Tom Bell
dc139e2ac9 Update the sym->str key conversion 2012-12-18 22:13:17 +00:00
Tom Bell
bd1c8fe760 Update Jekyll.configuration to convert symbol keys
Because Commander uses symbol keys in the options hash and I don't want to go
back backport every hash string key to symbols in Jekyll. 
2012-12-18 21:55:00 +00:00
Tom Bell
5b2e95b443 Add missing ] in self.watch string 2012-12-18 21:54:01 +00:00
Tom Bell
d8f328b87c Update loop position so trap handler is used 2012-12-18 21:41:18 +00:00
Tom Bell
3b4feb41f0 Add initial serve command
The `ServeCommand` will let you serve your site locally for development. You
can specify `--port`, `--host` and `--baseurl` options if you wish to change the
defaults.

Additionally the `BuildCommand` will be called before the processing of the
serve command, this makes sure that the site is actually built. This means you
are able to pass the `--watch` option to auto-regenerate your site, even while
serving it locally.
2012-12-18 21:00:24 +00:00
Tom Bell
14766497c8 Add bin/jekyll2 and initial BuildCommand
The `BuildCommand` class is responsible for handling the building of the site.
It can also optionally watch for changes to files and regenerate the site if
needed.

The `Command` class holds any methods which are used by any command
implementation.
2012-12-18 20:34:09 +00:00
Tom Preston-Werner
3a8ebb4b71 Merge branch 'fix/front-matter-regexp' of https://github.com/zimbatm/jekyll into zimbatm-fix/front-matter-regexp 2012-12-15 22:09:41 -08:00
Tom Preston-Werner
22f4b12836 Clean up default config spec. 2012-12-15 22:09:21 -08:00
Tom Preston-Werner
583f9e0019 Merge branch 'master' of https://github.com/Neil-Smithline/jekyll into Neil-Smithline-master 2012-12-15 16:42:26 -08:00
Tom Preston-Werner
26f8d60542 Merge branch 'master' of https://github.com/wbrady/jekyll into wbrady-master 2012-12-15 16:35:45 -08:00
edeustace
4bae42a671 use Array.join instead of Array.inject, add .svn to defaults 2012-12-09 11:43:49 +01:00
Matt Rogers
8fb4e8fcca Convert slashes in titles to dashes when migrating from WordPress
When a post has a title that contains a slash, such as 'This is my cool
blog post part 1/2', convert the slash to a dash so that the post
filename is created correctly.

Fixes issue #680
2012-12-04 20:45:20 -06:00
Tom Bell
38ac55381b Only pass first class to Pygments
This prevents an exception if something like the following is used:

~~~ {foo bar}
some code
~~~
2012-11-13 07:59:36 +00:00
Fabio Neves
20ac62d30e Making sure errors don't halt the import.
Wrapped file operations in a begin/rescue block.
2012-11-11 23:28:10 -05:00
Jashank Jeremy
85f2dfffa6 faster_lsi: Massively accelerate LSI performance.
Currently, Classifier::LSI rebuilds the index every time an entry is
added.  This runs into massive performance overheads on my website;
theoretically, disabling automatic index rebuilds, and explicitly
rebuilding the LSI index at the end of the LSI repopulation should
speed things up nicely.

As a side note, here, I use pandoc-ruby to provide a more featureful
Markdown transformer, so be mindful that the numbers I quote here have
artifically imposed I/O overheads.

With just the 76 posts I wrote this year (abysmal, I know), I come up
with the following figures:

    Without faster_lsi:
      jekyll --lsi  16.91s user 0.88s system 97% cpu 18.302 total
    With faster_lsi:
      jekyll --lsi  2.72s user 0.77s system 88% cpu 3.940 total

With 109 posts, we begin to see even better improvements:

    Without faster_lsi:
      jekyll --lsi  51.00s user 1.47s system 98% cpu 53.060 total
    With faster_lsi:
      jekyll --lsi  5.04s user 1.12s system 91% cpu 6.735 total

At this point, we begin to see I/O overheads being slower than LSI
when faster_lsi is active.  I call that fairly conclusive.  But wait,
there's more.  I have 273 posts lying around... I wonder what happens
if I feed them all in.  With faster_lsi, it was nice and clippy.
Without it, I simply gave up, and went and refilled my cup of tea.
And it was still going.

    Without faster_lsi:
      jekyll --lsi  1277.86s user 10.90s system 99% cpu 21:30.29 total
    With faster_lsi:
      jekyll --lsi  34.62s user 4.43s system 96% cpu 40.430 total

That is, in anyone's books, a major improvement.  Note, however, that
I don't know just how well this will perform with `jekyll --auto`
because I don't know how it does the LSI rebuilds.  I _think_ (but
please, don't commit me on this) that the LSI is rebuilt every time
Jekyll picks up a file change.

So, all up, the performance improvement is massive, and scales
depending on how many files you have.  At the last point, the
improvement is just on 3200%.

A more optimal solution would be to cache the LSI index and/or content
data somehow.  I'll leave that to when faster_lsi takes over ten
minutes to run.
2012-10-31 22:19:59 +11:00
Matt Rogers
bab29f64f7 Look for plugins under the source directory
When generating the site, Jekyll will now look for plugins under the
source directory by default. The plugin location can still be changed in
_config.yml
2012-10-12 22:43:20 -05:00
Alagu
2726a5f27c Merge branch 'master' of git://github.com/mojombo/jekyll 2012-10-03 19:33:21 -07:00
edeustace
7c800d3b07 Added a configuration variable: keep_files (default: ['.git']), based on this pull request: https://github.com/mojombo/jekyll/pull/556 2012-08-23 12:07:30 +02:00
Will Brady
336ea66983 Better error reporting on Liquid exceptions 2012-08-14 17:35:41 -04:00
Tom Bell
7f706f47fc Update redcarpet support to version 2 2012-08-13 15:03:33 +01:00
hokaccha
3d2664d983 pygments options for pygments.rb 2012-08-09 00:34:44 +09:00
Neil-Smithline
3904fd9257 make yaml parsing errors more informative 2012-06-29 12:08:57 -04:00
Tom Preston-Werner
ee402dd18a Merge branch 'switch-to-pygmentsrb' of https://github.com/tombell/jekyll into tombell-switch-to-pygmentsrb 2012-06-11 15:53:44 -07:00
Tom Preston-Werner
202894c196 Merge branch 'custom-layout-directory' of https://github.com/tombell/jekyll into tombell-custom-layout-directory
Conflicts:
	lib/jekyll/site.rb
2012-06-11 15:40:22 -07:00
Tom Preston-Werner
47090ffd2a Fix up a few TomDocs. 2012-06-06 11:59:49 -07:00
Tom Preston-Werner
0e9e7fbc85 Simplify Site#read_layouts. 2012-06-06 11:59:49 -07:00
Tom Bell
b2a1d61c04 Swap out albino for pygments.rb 2012-05-31 15:51:34 -04:00
Tom Bell
df2ad2ac59 Allow a custom 'layouts' directory
* Add 'layouts' option to change the dir from '_layouts' to anything relative
  to the source directory
* Add cucumber scenario for testing an alternative directory '_theme'
* Closes #563
2012-05-30 21:39:43 -04:00
Jonas Pfenniger
da4e8f2ee1 Front-matter should be at start of file
It's the theme of the moment ; regexp checking.

Just in case we have two line start with --- in the file, we want to
make sure it's not interpreted as a front-matter.
2012-05-25 18:59:26 +01:00
Luca Grulla
7d88f72409 avoiding to call site_payload one time per each post and page. Speed site creation up of a 20%. 2012-04-29 00:27:11 -07:00
Tom Preston-Werner
4533e60489 Merge branch 'master' of https://github.com/daneharrigan/jekyll into daneharrigan-master
Conflicts:
	lib/jekyll.rb
2012-04-23 16:48:18 -07:00
Tom Preston-Werner
8a0fbf02f5 Cleanup for RDiscount TOC support. Closes #333. 2012-04-23 16:15:55 -07:00
Michishige Kaito
f5b2acf8cd Added support for inline TOCs with RDiscount 2012-04-23 15:56:28 -07:00
Tom Preston-Werner
e29490c1c6 Allow setting of Kramdown smart_quotes. Fixes #482. 2012-04-23 15:34:54 -07:00
Fotos Georgiadis
4090500c5a Added path in url.
Page#dir was returning the wrong dir ('/') for pages in directories.
2012-04-09 03:08:41 +03:00
Jason Roelofs
604b60c9ba Add checks to prevent accidental deletion of the source directory 2012-04-03 22:05:18 -05:00
Jason Roelofs
8368485fa0 Remove deletion of dot files on cleanup.
This is a potentially very dangerous action that's impossible to test that it's correct.
If the '..' check line ever disappears, even running the tests will start deleting
everything accessible on the person's computer.

All dot-files that are generated are already known by Jekyll as either a static file or
a page (yaml front matter), only remove those files.
2012-04-03 21:33:35 -05:00
Dane Harrigan
316cc8559c moved paginate_path to default config 2012-02-26 20:58:14 -08:00
Jérémy Lecour
41f2805b7f No need to have a variable assignment, especially if it has the same name as the method parameter. 2012-02-11 09:05:59 +01:00
dunsmoreb
5fb801474e Truncate post slugs when importing from Tumblr.
Fixes #481.
2012-02-01 06:44:01 -06:00
Tom Preston-Werner
4499df8033 Shorten plugin loading code and update history. 2012-01-29 12:49:57 -08:00
Tom Preston-Werner
02366ae5ff Merge branch 'PluginsAsArray' of https://github.com/simensen/jekyll into simensen-PluginsAsArray 2012-01-29 12:32:59 -08:00
Tom Preston-Werner
9d70088f01 Properly select dotfiles during directory scan.
Fixes #363.
Fixes #431.
Fixes #377.
2012-01-23 00:21:08 -08:00
Beau Simensen
e6d89c6a0f More testing, whitespace and comment cleanup. 2012-01-22 22:17:25 -08:00