Commit Graph

166 Commits

Author SHA1 Message Date
Lucas Jenss 2ac98a7358 Merge branch 'master' into permalink-special-characters
Conflicts:
	lib/jekyll/page.rb
	lib/jekyll/post.rb
2013-07-14 23:58:22 +02:00
Parker Moore 015ace6773 Shuffle around rendering of extracted excerpt so it can be liquified. 2013-07-13 16:18:20 +02:00
Matt Rogers ff600bfcd9 Merge branch 'master' into refactor-related-posts 2013-05-14 21:54:12 -05:00
maul.esel eae3ae8479 fix handling of number categories 2013-05-10 14:07:23 +02:00
Matt Rogers 64f8a7b228 Move the require for related_posts to jekyll.rb 2013-05-08 07:39:00 -05:00
Matt Rogers f67f7f3db4 Move the building of related posts into their own class 2013-05-07 22:27:38 -05:00
Matt Rogers 39d33b48b0 Fix the index build with LSI 2013-05-07 06:58:54 -05:00
Parker Moore ce999f12fc Merge pull request #992 from maul-esel/consistent-page.url
add leading slash to page.url and post.url
2013-05-05 13:56:15 -07:00
Parker Moore f7fde70f5f 'The Best of Both Worlds,' à la @chad's comment 2013-04-28 15:21:17 +02:00
Parker Moore fcbab9a3ca Post#is_published ~> Post#published? 2013-04-26 21:00:47 +02:00
Parker Moore f7841d1713 Remove unnecessary self.tags.flatten! in favour of a one-line sol'n. 2013-04-26 20:59:54 +02:00
Parker Moore 422a4bd5cd Renamed tag- and category-instantiation methods 2013-04-26 20:25:07 +02:00
Parker Moore 6d9845a58b Refactor Post category instantiation 2013-04-26 20:23:58 +02:00
Parker Moore 482986e346 Refactored setting of Post.published flag 2013-04-26 20:21:17 +02:00
Parker Moore 266a52b161 The call to Post#read_yaml was in an unnecessary begin...rescue block. 2013-04-26 20:09:18 +02:00
Parker Moore 09c1c01d07 Refactor Post#related_posts to build the index in a different method 2013-04-26 20:05:52 +02:00
Parker Moore ffa93c22f1 Refactor Post#to_liquid 2013-04-26 20:03:57 +02:00
maul.esel d73841c961 always ADD a leading slash to page.url or post.url 2013-04-20 13:15:40 +02:00
maul.esel c6df2e150a remove leading slash from page.url and post.url 2013-04-19 16:37:48 +02:00
Parker Moore 6ed41e373c Remove code duplication: #write in Page and Post is the same. 2013-04-16 02:55:31 +02:00
maul.esel b7064a4bc3 remove 'post' and 'page' default layouts 2013-04-15 17:24:09 +02:00
Parker Moore f7310f554e Whitespace in post.rb 2013-04-15 00:32:04 +02:00
maul.esel 40e44a2051 do not force the permalink to be a dir if it ends on .html
Fixes #798.
2013-04-13 18:45:40 +02:00
maul.esel 968f3b0911 allow overriding page.path in YAML frontmatter 2013-04-13 00:05:49 +02:00
maul.esel dc4d7c0bf4 fix path for posts: must include "_posts" 2013-04-12 18:17:57 +02:00
maul.esel d64fd1e8fe expose file path relative to source dir to liquid
Fixes #633.
2013-04-12 17:37:16 +02:00
maul.esel 2b238786a2 one more indentation fix 2013-04-12 12:05:07 +02:00
maul.esel bcda51f97b do not allow markdown etc. in excerpt
Adjust the tests accordingly. Also
add a message for one of the tests.
2013-04-11 21:02:08 +02:00
maul.esel 951ee09a75 remove useless attr_reader for excerpt (is a method now) 2013-04-11 19:05:28 +02:00
maul.esel 654d598fcf rework excerpt to be an accessor method
Instead of setting self.excerpt, make it a method
that returns either the custom excerpt or the pre-
viously extracted excerpt.
2013-04-11 17:13:15 +02:00
maul.esel 069e70d1b3 do not override custom excerpt set in YAML frontmatter
Fixes #933.
2013-04-11 14:25:47 +02:00
Lucas Jenss cfcbe1f830 Refactor URL processing/generation into separate module
This is done to prepare for improved permalink generation
for URLs containing special characters, as proposed in
issue #782
2013-04-09 23:53:46 +02:00
Daniel Driver ea753130e6 add ordinal date permalink style (/YYYY/DDD/slug.html) 2013-04-06 08:17:02 -04:00
zachgersh e931414b77 Changed to short_month and re-ran tests. 2013-03-27 08:40:58 -07:00
zachgersh 6657f2add9 Added abbreviated month + test. 2013-03-26 23:06:34 -07:00
Aleksey V. Zapparov 196e26b580 Flatten tags and categories lists. Fixes #741. 2013-03-19 23:16:53 +01:00
Parker Moore 73ca35ee81 Ensure all categories are downcase. Fix for #842. 2013-03-17 23:43:37 +01:00
Aleksey V Zapparov 66c5ef2556 Fix typos and remove some obtrusive code 2013-03-17 13:42:46 +01:00
Aleksey V Zapparov 22dcc4e20f Adds excerpt to posts 2013-03-04 17:13:25 +01:00
Tom Preston-Werner 4caf613be8 Merge branch 'drafts' of https://github.com/scribu/jekyll into scribu-drafts 2013-03-03 12:57:55 -08:00
scribu 1a351284ca rename get_base() to containing_dir() 2013-03-03 12:56:12 +02:00
scribu 78831d94cd don't mess with dir parameter 2013-02-09 23:19:35 +02:00
scribu 1ac46b17c4 Don't require date in draft filenames. 2013-02-09 21:35:41 +02:00
Parker Moore b4bea4a586 Merge branch 'code-cleanup' of git://github.com/tombell/jekyll into code-cleanup
Module Cleanup

* 'code-cleanup' of git://github.com/tombell/jekyll:
  Remove new lines between module and class
  Update tag classes moving into a module
  Update pagination classes moving into a module
  Update converter classes moving into a module
  Strip extra newlines
  Update command classes moving into a module

Conflicts:
	lib/jekyll/commands/serve.rb
2013-01-27 23:13:16 +01:00
scribu 0ad623fb85 first pass at --drafts flag 2013-01-20 05:23:56 +02:00
Tom Bell 517e6f81d3 Remove new lines between module and class 2013-01-20 00:00:49 +00:00
Parker Moore cd05f6be78 Ensures that categories are Strings before escaping. Fixes #759. 2013-01-17 21:55:01 -05:00
Parker Moore faf5e44c47 Merge pull request #664 from Jashank/faster_lsi
faster_lsi: Massively accelerate LSI performance.
2013-01-16 18:36:01 -08:00
Parker Moore 5a3e05dbff Ensuring that layout is only set to the default value if layout is not specified 2013-01-12 15:31:14 -08:00
7rans e8c74fe7a8 Layouts default to page or post depending upon type. 2013-01-12 13:49:45 -08:00
Jashank Jeremy 68333cd221 Slight stylistic tweak to LSI initialisation.
Recommended-by: parkr
2013-01-11 20:02:31 +11:00
Tom Preston-Werner 4c70c036e7 TomDoc lib/jekyll/post.rb. 2013-01-03 22:20:42 -08:00
Nat Welch 934495b272 Adds some random docs for stuff I saw while skimming the code. 2012-12-18 22:42:42 -08: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
Neil-Smithline 3904fd9257 make yaml parsing errors more informative 2012-06-29 12:08:57 -04:00
Tom Preston-Werner 3c2519f07d Merge pull request #419 from vjt/master
Exception handler in Convertible references nonexisting method .name
2012-01-22 00:25:55 -08:00
Tom Preston-Werner 03ad973523 Update history. 2012-01-21 19:43:32 -08:00
Marcello Barnaba f0f99eae8a Fix exception thrown in exception handler at convertible.rb:81 2011-10-18 23:05:39 +02:00
Laurent Arnoud 1356e75811 Generate escaped url for categories with space.
Space in URLs should be encoded.

Signed-off-by: Laurent Arnoud <laurent@spkdev.net>
2011-07-10 23:56:56 +02:00
Tom Preston-Werner dce4ccc5a4 Better error message for invalid post date. 2011-03-11 17:52:25 -08:00
Aman Gupta 13cc44fb12 sanitize urls and ignore symlinks 2011-03-10 20:14:38 -08:00
Stefan Schüßler 5b680f8dd8 remove orphaned files in destination 2010-12-01 18:04:50 +01:00
Tom Preston-Werner 5335debfb2 Merge remote branch 'technoweenie/no-leading-zeroes'
Conflicts:
	lib/jekyll/post.rb
2010-06-18 15:34:56 -07:00
rick e8d119ef0a add :i_day and :i_month permalink values so you can get urls like /2010/6/1/title 2010-05-31 23:28:39 -07:00
Kris Brown cedda3afa3 move converters to classes 2010-02-27 22:14:27 +00:00
Kris Brown 5a807aa12e pages now present in the site payload and can be used through the site.pages variable 2010-02-27 08:09:13 +00:00
Kris Brown 355b20265e removed whitespace from lazyeye's commit 2010-02-26 21:33:56 +00:00
lazyeye cfd6ebc747 pass time object to liquid when time is specified in front matter 2010-02-26 21:31:01 +00:00
Tom Preston-Werner a4f3f5c583 Merge commit '0a1e3cd2508c797d7b8d1038636a6e7111e5cd3d'. Fixes #33.
Conflicts:
	features/post_data.feature
2010-01-14 20:00:19 -08:00
Kris Brown a0aa3fa6dc Merge branch 'enh_post_date_in_front_matter_issue_62' 2010-01-10 21:58:34 +00:00
Kris Brown a1550b3378 allow date to be specified in the front matter and override the value from the file name, fixes #62 and #38 2010-01-10 21:55:54 +00:00
Kris Brown ce228ac1c4 removed accessor method and fixed tests 2010-01-10 16:24:56 +00:00
Kris Brown 93c029d62e fixed #73 and #84 2010-01-10 16:14:25 +00:00
Kris Brown 6b74454a07 resetting to upstream 2010-01-10 10:11:44 +00:00
Kris Brown 7806a0d6bb separated up the attrs required by convertible and made tags and categories always non-nil as empty front matter entries could cause them to be nil 2010-01-06 15:19:39 +00:00
eugenebolshakov e0ceee2e89 Added trailing slash to pretty url template
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-06-23 08:10:27 -04:00
Thomas Jack 0a1e3cd250 stop sorting post categories so they show up in order in the url 2009-06-08 19:26:29 -05:00
Urban Hafner 8379958d95 Order posts by slug name if the date is the same 2009-06-03 08:48:16 +03:00
Nick Quaranto 99098dd8c7 Removing the extremely brittle generated_site test and moving the tags check into post.rb so pages don't break 2009-05-18 18:28:56 -04:00
Nick Quaranto 102f6be6a2 Added tags to posts. Based off Henrik's implementation in 072d9e7. 2009-05-18 18:28:56 -04:00
Nick Quaranto 921aee23d3 Removing topics for good 2009-05-18 18:28:56 -04:00
Bjørn Arild Mæland 4bcece18ae Issue 7: CGI escape post titles
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-04-28 08:09:42 -04:00
Nick Quaranto 080108b0f0 Making sure permalinks were set right, and only generating the url once 2009-04-25 01:07:05 -04:00
Nick Quaranto 9da140fcb2 Getting there, prefixes work great 2009-04-25 00:58:28 -04:00
Nick Quaranto 288d5045d2 Changing to the template permalink system, only test_post passing so far 2009-04-25 00:17:10 -04:00
Juan Lupion 2e187864cf Next and previous posts
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-04-22 19:51:41 -04:00
Nick Quaranto 829530be36 Adding the categories back into the post payload 2009-04-01 07:36:56 -04:00
Tom Preston-Werner 73d42b24ad Huge refactor to move all config into Jekyll::Site
This commit makes Jekyll threadsafe (or at least makes it possible to be so).
It also makes it a ton easier to use Jekyll as a library for scripted site
transformation. I did, however, break all the tests. =(
2009-03-12 19:05:43 -07:00
Tom Preston-Werner 54d713b26a Merge commit 'fab8442432f473ba647c682608bc8ff9ced6cca2' 2009-03-10 16:51:26 -07:00
Tom Preston-Werner 86e72a8b25 a few style changes and readme for pretty permalink 2009-03-10 16:39:44 -07:00
Tim Dysinger 7655c745c4 small patch to support wordpress style pretty blog urls 2009-02-26 09:13:45 -10:00
Bjørn Arild Mæland 0ec9a1330a Made it possible to enter categories from YAML as an array. 2009-02-22 19:09:16 +01:00
Nick Quaranto ad617da4e0 Added publish flag to posts, not preventing it from being in the destination directory yet. 2009-02-10 01:13:31 -05:00
Nick Quaranto 1211f23b53 Adding support for setting post categories through YAML if not specified by directory structure 2009-02-10 01:12:20 -05:00
Tom Preston-Werner 5311b71a5c fix accessor line conflict 2009-01-21 15:25:55 -08:00
mreid 0b78c32771 Added option to not put file date in permalink URL 2009-01-19 19:58:53 +11:00
Luismi Cavalle 15c5a78a47 Fixing permalink support 2009-01-05 00:35:59 +01:00
Basil Shkara feff93c603 If title is ommitted from a Post's YAML, use the filename's slug. 2009-01-02 12:18:36 -08:00
Tom Preston-Werner dd8054411c deep merge hashes so as to not lose data 2008-12-24 22:06:42 -08:00
Tom Preston-Werner dad9a31559 fix categories and add topics 2008-12-24 15:25:42 -08:00