Commit Graph

1567 Commits

Author SHA1 Message Date
Parker Moore f418ea5fc3 Extract plugin management into its own class. 2014-04-01 18:10:51 -04:00
Ben Hanzl f2ed30dff5 Move rouge loading 2014-03-31 19:48:18 -04:00
XhmikosR a6ab3abbf9 Update site_template/_includes/head.html.
* remove `chrome` from `X-UA-Compatible`; it's been discontinued
* remove unneeded end tags
* remove unneeded slash in `canonical` link
2014-03-31 20:38:18 +03:00
maul.esel 8c0e5d8d98 remove duplicate code for tags and categories
Previously the `Site#tags` and `Site#categories` actually had the
same structure as a hash returned by `Site#post_attr_hash()`, but
maintained separately. Remove this duplicated infrastructure. For
backwards-compatibility for plugins, provide aliases for them.
2014-03-31 01:02:08 +02:00
Parker Moore e277855eee Merge pull request #2165 from Zequez/master 2014-03-30 00:19:03 -04:00
Parker Moore 840ef35be9 Merge pull request #2175 from jekyll/security-yo 2014-03-29 23:18:07 -04:00
Fabian Rodriguez 302bc46914 rename variable inside block 2014-03-27 19:53:28 -03:00
Fabian Rodriguez adcfde14ed align 'end' with 'def' 2014-03-27 19:52:52 -03:00
Fabian Rodriguez 4c5dfa1391 remove unused variables 2014-03-27 19:49:41 -03:00
Parker Moore 009e2c200d Only strip the drive name if it begins the string. 2014-03-27 18:19:35 -04:00
Parker Moore 859a615e93 Bump 💎 version to 2.0.0.alpha.2 and release. 2014-03-26 14:04:59 -04:00
Zequez 5745eb9be8 Added option to force watch to use polling 2014-03-23 01:09:00 -07:00
Daniel Schauenberg 81e4e1d8f4 add support for unpublished drafts
I keep all my ideas for blog posts as drafts in my draft folder. However I'm
only really working on a couple at once. This let's me mark drafts that I'm
not working on right now as unpublished so they don't clutter the site while
I'm checking on the other drafts.
2014-03-22 19:52:10 -04:00
nitoyon c56ce248c9 Move URL escape to Jekyll::URL 2014-03-21 16:59:25 +00:00
nitoyon e3e1c11509 Fix Page#url escape
Post#url wasn't escaped at all.

For example, when we have a page named 'a#b.html',
we expect its url to be 'a%23b.html',
but it was actually 'a#b.html'.

We now use Jekyll::URL.escape_path and Jekyll::URL.unescape_path.
2014-03-21 16:57:41 +00:00
nitoyon eebb6414bf Fix Post#url escape
Post#url was escaped using CGI.escape.
When file name contains a space character, its url points to
non-existing URL.

For example, when we have a post named '2014-01-02-foo bar.md',
we expect its url to be '/2014/01/02/foo%20bar.html',
but it was actually '/2014/01/02/foo+bar.html'.

We now define Jekyll::URL.escape_path and Jekyll::URL.unescape_path,
and use them to escape and unescape Post#url
2014-03-21 16:57:40 +00:00
Parker Moore 1b8205245e Went with @stomar's suggestion 2014-03-19 00:49:50 -04:00
Parker Moore 63e977721a Add a message and error out when Pygments returns nil. 2014-03-19 00:48:35 -04:00
Parker Moore d80471c0a3 Merge pull request #994 from stephenmcd/master 2014-03-17 17:45:49 -04:00
Stephen McDonald de9ce3437d Protect against nil @lang before fixing for css class names. 2014-03-18 08:41:49 +11:00
Parker Moore e746b3bd5f Initialize each command in its own class so we can be *magical*. 2014-03-13 14:07:05 -04:00
Parker Moore ac37b8acee Merge pull request #2122 from XhmikosR/whitespace 2014-03-11 11:10:04 -04:00
XhmikosR 553338636b Trim trailing spaces and convert tabs to spaces. 2014-03-11 07:44:01 +02:00
Matt Rogers 19dc855551 Properly strip drive name from clean path when sanitizing path. 2014-03-10 14:35:19 -04:00
Parker Moore 37c2da5062 Properly clean path for Windows machines which is *nix-compliant. 2014-03-09 21:12:34 -04:00
Parker Moore 7787d64bce Rename those Utils functions. 2014-03-04 15:52:05 -05:00
Parker Moore 5e8643d855 Add Utils.stringify_hash_keys 2014-03-04 15:44:53 -05:00
Parker Moore e2af1b547b Extract core extensions into a Utils module
Fixes #2111
2014-03-03 22:13:03 -05:00
Parker Moore 0633cbf8fa Bring in jekyll-sass-converter 2014-02-28 21:20:20 -05:00
Parker Moore 9ffb984f37 Sass support should be shipped outside core. 2014-02-28 21:12:00 -05:00
Parker Moore d7598ee9d2 Ensure inputted code is a string. 2014-02-24 17:42:46 -05:00
Parker Moore 77f26d5681 Upgrade to guard/listen 2.x 2014-02-24 17:10:43 -05:00
Parker Moore 8a0d036b87 Greatly simplify Jekyll's gemspec. 2014-02-24 16:15:51 -05:00
Parker Moore b6f006c152 Merge pull request #2050 from jglovier/master
* jglovier-master: (35 commits)
  Fix for menu at mobile again
  Fix site footer styles on mobile
  Fix for menu not working on mobile
  dat breathing room tho (expand site width slightly more)
  Replace footer github and twitter link text with inline SVG icons
  Post content styles for mobile
  Replace unicode menu icon with inline SVG
  Adds mobile styling for menu at sub 600px viewport widths
  🔥 permalink option so default date permalink method is left in tact
  For the love of perf, add syntax.css rules to main.css and call only one stylesheet
  Adds another placeholder post to illustrate post content styles
  Dem new styles tho
  Copy tweaks - brevity FTW
  Use class instead of id for CSS specificity ❤️
  Add link for RSS subscription
  Slightly friendlier and personal date formatting; classes for dem styles, yo
  Remove to avoid confusion with site.title
  demonstrate use of permalink settings
  Add site.url for use in head canonical meta and feed.xml template
  Add site.description for use in site head document meta, and feed.xml template
  ...
2014-02-24 16:07:20 -05:00
Joel Glovier e2c67e0239 Fix for menu at mobile again 2014-02-24 16:03:39 -05:00
Joel Glovier 2c100a8e87 Fix site footer styles on mobile 2014-02-24 15:56:49 -05:00
Joel Glovier 7fbc636824 Fix for menu not working on mobile 2014-02-24 15:42:03 -05:00
Parker Moore 57d07469d3 Sanitize paths uniformly, in a Windows-friendly way.
Fixes kinda a #1948 thing.
Related to #1946.
2014-02-23 20:05:23 -05:00
Corey Ward f1c4e247a5 Remove unnecessary references to `self` 2014-02-21 16:27:21 -06:00
Joel Glovier bdd35789db dat breathing room tho (expand site width slightly more) 2014-02-20 20:34:09 -05:00
Parker Moore e0166682da Sort the static files by relative path before sending to liquid 2014-02-19 14:02:03 -05:00
Parker Moore e3dd908d55 Add StaticFile#to_liquid['extname'] :) 2014-02-19 13:55:58 -05:00
Parker Moore b5a398bdff Add StaticFile#to_liquid and StaticFile#relative_path 2014-02-19 13:35:13 -05:00
Parker Moore 949aa3fc32 Test fetching of static files 2014-02-19 13:16:21 -05:00
Parker Moore 6e40338f9e Expose site.static_files to Liquid 2014-02-19 13:04:33 -05:00
Parker Moore 6a6e66bf9e Merge pull request #2058 from jekyll/layouts-relative-to-config 2014-02-18 01:53:15 -05:00
Matt Rogers b68229aa2c Make LayoutReader#layout_directory public.
Since it's being used in a test, let's go ahead and expose it instead of
dealing with using Object#send to send the message along.
2014-02-17 22:13:29 -06:00
Joel Glovier 6bc4776199 Replace footer github and twitter link text with inline SVG icons 2014-02-17 22:23:30 -05:00
Joel Glovier aa4280904a Post content styles for mobile 2014-02-17 16:58:12 -05:00
Joel Glovier 1c5ed75e72 Replace unicode menu icon with inline SVG
- unicode menu icon doesn’t render pixel crisp (has some
anti-aliasing), whereas SVG renders pixel optimized
- using inline SVG (instead of a referenced, attached file, will save
an http request
2014-02-17 16:52:48 -05:00
Joel Glovier 893b664f34 Adds mobile styling for menu at sub 600px viewport widths 2014-02-17 16:36:21 -05:00
Parker Moore e5bcddfbe0 Merge pull request #2041 from anthonyjsmith/webrick_index_xml 2014-02-17 16:23:25 -05:00
Joel Glovier 3e6f2d8cef 🔥 permalink option so default date permalink method is left in tact 2014-02-17 12:42:15 -05:00
Parker Moore 1a879a04ab Add tests for determining source dir 2014-02-16 23:19:03 -05:00
Parker Moore 47babef79a Make the layouts: config key relative to CWD or to Source
Fixes #1576.
2014-02-16 22:42:38 -05:00
Parker Moore ab0ebadee3 Merge master into security-vuln-patches 2014-02-16 22:02:03 -05:00
Parker Moore 264dfc164d When an include cannot be found, only print file path relative to source. 2014-02-16 22:00:33 -05:00
Parker Moore fb8e562123 Merge pull request #2042 from anthonyjsmith/draft-path 2014-02-16 21:36:00 -05:00
Markus Roth c47751148c Remove executable bits of non executable files. 2014-02-17 01:41:12 +01:00
Joel Glovier 28554fd307 For the love of perf, add syntax.css rules to main.css and call only one stylesheet 2014-02-15 23:27:34 -05:00
Joel Glovier bd80ce4c61 Adds another placeholder post to illustrate post content styles 2014-02-15 23:24:30 -05:00
Joel Glovier cac15574e7 Dem new styles tho
- Uses new typography, including Helvetica light, larger font-sizes,
and px values
- Wider site width, larger margins, and overall more whitespace
- Responsive down to mobile
2014-02-15 23:21:15 -05:00
Joel Glovier 1e28eee0c7 Copy tweaks - brevity FTW 2014-02-15 23:17:05 -05:00
Joel Glovier 6773307237 Use class instead of id for CSS specificity ❤️ 2014-02-15 23:16:47 -05:00
Joel Glovier a11f01784a Add link for RSS subscription 2014-02-15 23:16:23 -05:00
Joel Glovier e5cf3cbbc1 Slightly friendlier and personal date formatting; classes for dem styles, yo 2014-02-15 23:16:11 -05:00
Joel Glovier 3d464688fc Remove to avoid confusion with site.title 2014-02-15 23:15:37 -05:00
Joel Glovier 8d05a54590 demonstrate use of permalink settings 2014-02-15 23:14:20 -05:00
Joel Glovier e398c3b16c Add site.url for use in head canonical meta and feed.xml template 2014-02-15 23:14:01 -05:00
Joel Glovier 287851ebb4 Add site.description for use in site head document meta, and feed.xml template 2014-02-15 23:13:43 -05:00
Joel Glovier b3a2ea4e3e Software with Personality™ 2014-02-15 23:12:42 -05:00
Joel Glovier 240bbf4abb Adds feed.xml file for generating an RSS feed 2014-02-15 23:10:25 -05:00
Joel Glovier 53ae5a7b0f Add placeholder About page 2014-02-15 23:09:28 -05:00
Joel Glovier 1687f0855d Add placeholder Projects page 2014-02-15 23:09:19 -05:00
Joel Glovier 16d8d05172 Adds a basic page template
Many users moving to Jekyll from other popular blogging options (like
Wordpress) will be used to thinking in terms of pages/posts. Having a
page template like this will be convenient for those users.
2014-02-15 23:07:10 -05:00
Joel Glovier fcd2383de3 Refactor post template
- add article tags around post content
- creates post header
- add conditionals for extra options in meta
2014-02-15 23:04:44 -05:00
Joel Glovier 1b54afe67a remove extra line 2014-02-15 23:03:13 -05:00
Joel Glovier d5ea6e47dd Restructure default template to include page content wrap 2014-02-15 23:02:41 -05:00
Joel Glovier 8fa48b492e Footer markup restructuring
- rework footer to use columns
- add additional area for generic text
2014-02-15 23:02:04 -05:00
Joel Glovier 6d4e3f8c72 Refactor header markup
- use anchor instead of h1 for site title, for semantic accuracy, and
because post h1’s should be the post title
- implement nav wrapper for nav links
- use div.wrap for design structure
2014-02-15 23:00:37 -05:00
Joel Glovier d52b9b7e5b Remove redundant home link 2014-02-15 22:57:10 -05:00
Joel Glovier a1b60430d6 Add canonical meta set with config params for more google ❤️ 2014-02-15 22:56:30 -05:00
Joel Glovier b9875b7bc8 Add description meta set in config, for teh google ❤️ 2014-02-15 22:56:04 -05:00
Joel Glovier 7b0bf0d85c Add conditional to default to site.name if no page.title is set 2014-02-15 22:55:14 -05:00
Joel Glovier 3b97799837 Separate global components into includes for convenience, and to familiarize users with includes structure 2014-02-15 22:53:48 -05:00
Zlatan Vasović 699066ef85 Add `.mkdown` as valid Markdown extension
GitHub Linguist recognizes `.mkdown` as Markdown, so Jekyll should support it as Jekyll is used on GitHub pages.
2014-02-15 22:01:37 +01:00
Anthony Smith 86208d8c33 Add index.xml to WEBrick DirectoryIndex
Resolves #2040
2014-02-13 23:12:36 +00:00
Parker Moore 88e35f0852 Release 2.0.0.alpha.1 2014-02-13 18:02:49 -05:00
Matt Rogers ac7bed335a Merge pull request #1976 from jekyll/fix-pagination-issue
Relative posts should never fail to build, even if @dir or @name is nil
2014-02-13 12:39:23 -06:00
Parker Moore 83f5b4d93b Merge pull request #2031 from jekyll/utf8-heart 2014-02-13 12:53:58 -05:00
Josh Brown 69dc96dc9f Removed accidental linebreak 2014-02-13 13:28:11 +00:00
Josh Brown 933590b6ba Added a breakpoint for .site to make it responsive 2014-02-13 13:27:34 +00:00
Parker Moore c58c5b8782 Default to using the UTF-8 encoding when reading files.
Fixes #2029.
2014-02-11 17:48:52 -05:00
Anthony Smith 18279558da Update #relative_path for _drafts and add tests.
Resolves #2019. Add new tests for drafts. Also check path variable in
test for posts.
2014-02-11 12:48:34 +00:00
Parker Moore 56a633ae95 Update Jekyll version to latest released.
Latest release can be found on the v1-stable branch.
2014-02-09 18:44:30 -05:00
Parker Moore dd3018ce02 Merge pull request #1988 from jekyll/maruku-to-kramdown 2014-02-08 17:07:54 -05:00
Parker Moore 22f2001ff5 Set default markdown converter to Kramdown
- Update default markdown converter in docs for configuration
- Update tests so they are in line with Kramdown output
- Add deprecation message to when config is built
2014-02-08 13:17:46 -05:00
Parker Moore 1176fc6f57 Give File.join the strings from the array 2014-02-08 00:38:59 -05:00
Matt Rogers & Persa Zula c36a6d3e0d Wrap the LayoutReader in the Jekyll module 2014-02-06 23:07:38 -06:00
Matt Rogers & Persa Zula 833b40095f Rename `with` to `within`
Thanks @parkr
2014-02-06 23:07:11 -06:00
Matt Rogers & Persa Zula fd92820b03 Remove Site#read_layouts 2014-02-06 22:46:09 -06:00
Matt Rogers 70ecef0094 Sort methods from most important to least important
This idea is based on the concept of a newspaper. The most important
things such as the headlines and the major details of the story at the
top. This translates to code in that the public API and the more
important private methods are at the top of the file. The more detailed
information (or methods, in the code) are further down, so that if
you've gotten all you need out of the code up to a certain point, you
don't need to keep reading anymore.
2014-02-06 22:22:06 -06:00
Matt Rogers c5b81d580b Refactor the LayoutReader class 2014-02-06 22:22:06 -06:00
Matt Rogers f581940c71 Create a LayoutReader class to read layouts 2014-02-06 22:22:06 -06:00
Parker Moore f638fb1784 Merge master into security-vuln-patches 2014-02-06 17:21:54 -05:00
Matt Rogers 5edb4c6bfd Merge pull request #1982 from dtao/safe-yaml-no-clobber 2014-01-31 06:48:16 -08:00
Parker Moore baabe7eb7e DRY up code, props @tamouse 2014-01-30 22:03:10 -05:00
Matt Rogers 2b973468bf Merge pull request #1991 from jekyll/coffeescript 2014-01-30 18:39:40 -08:00
Aziz Shamim 509e2181de sync mime types to GitHub 2014-01-26 12:15:15 -06:00
Parker Moore fdbfd719ca Add CoffeeScript converter. 2014-01-25 20:38:51 -05:00
John Firebaugh 4a769dbf5f Optimize Post#{next,previous}
Use object equality for comparisons rather than Comparable#==,
which in turn uses Post#<=>, which is slow.

This yielded a 3x performance improvement for `jekyll build`
on a large site (1m6.467s -> 0m19.532s).
2014-01-24 17:17:41 -08:00
Matt Rogers 5b7a53b543 Merge pull request #1932 from jekyll/sass 2014-01-24 15:18:06 -08:00
Parker Moore c9a3c40f83 fixes based on @mattr-'s notes 2014-01-24 12:19:19 -05:00
Parker Moore 774bf96c61 Merge master into sass 2014-01-24 12:17:35 -05:00
Dan Tao 4f0b1bdf6d switched from YAML.safe_load* to SafeYAML.load* 2014-01-23 17:25:17 -08:00
Matt Rogers 98857832cd Merge pull request #1931 from liufengyun/published 2014-01-22 05:38:04 -08:00
Parker Moore 606c525099 Relative posts should never fail to build, even if @dir or @name is nil
Fixes https://github.com/jekyll/jekyll/issues/1963
2014-01-21 23:50:20 -05:00
liufengyun 22e1e5f28c make sure pages with published being false are not generated 2014-01-19 09:52:19 +08:00
Jens Nazarenus 4c140efba8 fix full path leak to source directory when using include tag 2014-01-15 21:36:35 +01:00
Ben Balter e3be74e376 sanity check for pages permalink traversal
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Andy Lindeman a8dd34420b Prevents disclosure of file existence
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Ben Balter c84cb5c007 escape relative post permalinks, cleanup
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Ben Balter a799e41b70 patch symlink vuln and properly test
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Ben Balter 323d14845f rebreak tests, move sanitization closer to write
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Ben Balter 9b3068c15d url escape before sanitizing
Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-01-13 22:21:30 -08:00
Parker Moore 4afe39e461 Allow caching in unsafe mode, but disable in safe mode. 2014-01-12 21:36:08 -08:00
Parker Moore 4784d1de18 Build Sass configuration options. 2014-01-12 21:30:30 -08:00
Parker Moore 22d4e2aa90 Consolidate into one master 'Sass' converter. 2014-01-12 21:30:29 -08:00
Parker Moore daa0b76484 Allow users to specify options for Sass. 2014-01-12 21:30:29 -08:00
Parker Moore 4da7223831 Fixes for Sass/SCSS converters. 2014-01-12 21:30:29 -08:00
Parker Moore 824a84ef2a Add support for Sass and SCSS. 2014-01-12 21:30:29 -08:00
Matt Rogers 6f394e82b5 Rename read_things to read_content. 2014-01-11 15:29:22 -06:00
Matt Rogers d96165e3c4 Merge pull request #1916 from jekyll/gitignore-excludes 2014-01-11 10:37:31 -08:00
Parker Moore 5a52986db0 Use 'Forwardable' module to pass along some attribute calls to @post 2014-01-10 22:54:06 -08:00
Parker Moore 331c7adc08 Move #glob_include? from core_ext to entry_filter 2014-01-08 20:24:21 -08:00
Parker Moore 3d67cdc150 Cast to string before duplicating. 2014-01-05 11:02:03 -08:00
Parker Moore 35868807c1 Ensure leading slashes in path matching. 2014-01-05 10:54:52 -08:00
Parker Moore 42fc5e9ee7 Excludes should be relative to the site source 2014-01-05 10:45:42 -08:00
Matt Rogers 883e16acde Merge pull request #1910 from pborreli/typos 2014-01-04 08:12:20 -08:00
Matt Rogers a33e86630d Merge pull request #1899 from soimort/preview-404 2014-01-04 08:04:20 -08:00
Pascal Borreli bdda3a8ef6 Fixed typos 2014-01-04 14:17:38 +00:00
Parker Moore 6ca731c13b Use idiomatic #is_a? method instead of #class == 2014-01-03 21:23:02 -08:00
Ben Balter 39e4d6b3ba add where filter to filter arrays of objects 2014-01-03 21:23:02 -08:00
Mort Yao 99b36c7c30 Routing 404 errors to custom 404 page for development server 2014-01-03 03:23:46 +01:00
Ahmed Hazem fdcf1f4526 Add --quiet flag 2014-01-01 18:50:27 +02:00
Matt Rogers 012387396a Merge pull request #1859 from robin850/rouge 2013-12-30 22:45:07 -06:00
Matt Rogers a2fd8ba7c3 Merge pull request #1849 from afeld/sort-attributes 2013-12-30 20:31:45 -08:00
Parker Moore 791c6d815d Merge pull request #1825 from arika/smallfix_post_url_tag_behavior_for_invalid_names 2013-12-25 22:32:50 -08:00
Parker Moore 1a3a607fcf Merge pull request #1831 from jekyll/default-maruku-fenced-code-blocks 2013-12-25 22:14:23 -08:00
Parker Moore 6e8f31f406 Merge pull request #1841 from jens-na/include-variable-liquid-filters 2013-12-25 22:11:33 -08:00
Parker Moore ebaa484294 Merge pull request #1866 from colindean/patch-2 2013-12-25 22:06:34 -08:00
Parker Moore ab95cca434 Add TomDoc for Jekyll::Converters::Markdown#allowed_custom_class? 2013-12-26 00:33:34 -05:00
Parker Moore 7b9984699c Fix error in exception message in Markdown Converter [ci skip] 2013-12-26 00:14:24 -05:00
Parker Moore 60b43104ee Extract checks for acceptable custom markdown processors to method.
We should probably write more about what it does and how it works in a TomDoc block above.
@envygeeks, want to give that a shot?
2013-12-26 00:02:56 -05:00
Jordon Bedwell a206dc1a8f Use downcase. 2013-12-25 23:55:20 -05:00
Parker Moore c70350e275 Merge branch 'steal-envygeeks-custom-markdown-processors' of git://github.com/gjtorikian/jekyll into gjtorikian-steal-envygeeks-custom-markdown-processors
* 'steal-envygeeks-custom-markdown-processors' of git://github.com/gjtorikian/jekyll:
  Depend on Jekyll.logger.error, not $stderr
  Allow custom Markdown processors.
  New is implied by `raise`, 2nd is the message.
  Use $stderr, not STDERR, $stderr points to STDERR.
2013-12-25 23:52:50 -05:00
Garen Torikian 31bebf0f9e Depend on Jekyll.logger.error, not $stderr 2013-12-25 19:36:49 -06:00
Jordon c759a7a75f Allow custom Markdown processors. 2013-12-25 19:36:25 -06:00
Jordon 626d54a812 New is implied by `raise`, 2nd is the message. 2013-12-25 19:36:25 -06:00
Jordon 4d017b4fed Use $stderr, not STDERR, $stderr points to STDERR. 2013-12-25 19:36:25 -06:00
Robin Dupret 036cbda2f6 Require at least 1.3.0 for Rouge
Rouge 1.3.0 introduced a `rouge_formatter` helper which is handy to
overwrite the formatter default when using the Redcarpet plugin so let's
require this version at the very least.

An abort statement will be thrown when the installed version is not
correct.
2013-12-25 18:06:29 +01:00
Parker Moore 9d5785cead Merge pull request #1847 from schneems/schneems/better-bat-time-error 2013-12-24 11:05:34 -08:00
Colin Dean 88686e759e Add `path` to required methods
The error messages in this module call `#path`, but the module does not require the `path` method to be implemented. This change documents that classes which include `Convertible` must define `path`.

See #1846 for discussion.
2013-12-23 12:56:02 -05:00
Robin Dupret 3ca2cb0119 Fix various typos and improve the doc 2013-12-23 13:03:29 +01:00
Robin Dupret cab9047de1 Set the wrap option to false when using Rouge
Since Rouge yields the pre tag with a class attribute but we don't want
it, we should set the wrap parameter to false when instantiating a new
formatter object.

Also use Rouge::Formatter#format instead of #render which is deprecated
and will be removed in the near future.
2013-12-23 13:03:24 +01:00
Aidan Feldman fa8618879d Merge remote-tracking branch 'upstream/master' into sort-attributes 2013-12-22 19:31:56 -05:00
Robin Dupret bd442680ea Rely on the Redcarpet plugin instead of hard-coding
To avoid code duplication and have to keep tracking of the API change of
Rouge, let's rely on the Redcarpet plugin and customize the output on
our needs.
2013-12-22 18:45:46 +01:00
Robin Dupret 4bf716c2ad Set highlighter to pygments when upgrading
In case you are upgrading from 1.4.2 to 2.0 and the pygments option is
set to true, then the highlighter option will be set to pygments
automatically.
2013-12-22 18:45:46 +01:00
Robin Dupret 0831d2b0f8 Add support for the Rouge syntax highlighter
By setting the `highlighter` setting to `rouge` you can now easily
highlight your code with it instead of relying on Pygments. However,
Jekyll doesn't depend on Rouge explicitly, you will need to install it
or add it to your Gemfile.

The documentation has been updated accordingly.
2013-12-22 18:45:40 +01:00
Robin Dupret 92064134d6 Rename the pygments option to highlighter
Rename the pygments configuration option to highlighter to allow
different highlighters in the future. For now, the allowed values are
`pygments` and `null`.

It's now more straightforward to plug another syntax highlighter.
2013-12-22 12:45:15 +01:00
Aidan Feldman 2bfafb3b33 make non-data properties/methods accessible to Liquid
per https://github.com/jekyll/jekyll/pull/1849/files#r8490593
2013-12-22 03:38:32 -05:00
Aidan Feldman c2b750448e allow data attribute access by Liquid on Convertible items 2013-12-19 17:14:51 -05:00
Jens Nazarenus 10ee83d680 edited raise message when validating included file 2013-12-19 18:23:21 +01:00
Aidan Feldman 3c1d45f45f Sort pages by name by default
The order that files are returned differs across operating systems, so
ensure that they're being sorted after the fact.
2013-12-19 01:02:25 -05:00
schneems 22017d085b Better error message when time is not parseable
Give the full path of the file that cannot be parsed so the user can locate it easier. Follow up the error message with helpful instructions: they can resolve the error by fixing the date or excluding the file or directory from being processed.
2013-12-18 16:14:21 -06:00
Jens Nazarenus 43ef9a2e4f variables in include tag with filters 2013-12-17 23:51:52 +01:00
akira yamada ecab2eb473 made error description more helpful 2013-12-17 10:57:12 +09:00
Parker Moore 1ebce26881 Default Maruku fenced_code_blocks to ON.
Extends https://github.com/jekyll/jekyll/pull/1799
2013-12-15 16:08:21 -05:00
akira yamada 9d259fe315 added error description for invalid post name 2013-12-15 17:18:11 +09:00
akira yamada a5545d5bad post_url tag raises ArgumentError for invalid name
Using post_url tag with invalid name raises TypeError.

It should raise ArgumentError and should display detail of the error to
fix the error.
2013-12-14 22:30:22 +09:00
Parker Moore 6195192bcf mojombo/jekyll ~> jekyll/jekyll 2013-12-11 17:44:33 -05:00
Matt Rogers 39b6fe732f Merge pull request #1780 from mojombo/kill-1-8 2013-12-11 06:08:10 -08:00
Matt Rogers 6efb726e2b Merge pull request #1805 from ivantsepp/scaffold_vertical_scrollbar 2013-12-10 20:58:45 -08:00
Matt Rogers a7d4ee8bfb Merge pull request #1799 from konklone/maruku_fenced_code_blocks 2013-12-10 20:30:44 -08:00
Ivan Tse b18f6505dd Remove margin-top of `.site` to prevent collapsing margins. 2013-12-10 18:39:16 -05:00
Parker Moore a70726e554 Merge pull request #1788 from mojombo/group-by-filter-2 2013-12-10 08:48:44 -08:00
Eric Mill afe9387578 condensing code slightly 2013-12-10 11:04:04 -05:00
Matt Rogers ed82098162 Merge pull request #1796 from mojombo/fix-fetching-things
Reject nil entries in Site#read_things
2013-12-09 18:23:19 -08:00
Christoph Schiessl 695e5bbc40 move EntryFilter class from global namespace into Jekyll module 2013-12-09 23:06:27 +01:00
Parker Moore 063111737c Refactor data/[] fetching of item property. 2013-12-09 12:59:43 -05:00
Parker Moore bf9cf5340d Reject nil entries in Site#read_things 2013-12-09 12:46:57 -05:00
Eric Mill 14418f74ae in-progress patch for maruku and fenced code blocks 2013-12-08 22:37:46 -05:00
Parker Moore 381ab4e71b Implement group_by Liquid filter & tests. 2013-12-08 01:16:48 -05:00
Parker Moore 601f89d4d1 Remove File.read_with_options patch to allow 1.9 and 1.8 to behave the same 2013-12-08 00:50:12 -05:00
Parker Moore d130fd13dc Remove Ruby <1.9 core extensions 2013-12-08 00:47:44 -05:00
Parker Moore b58cd5c132 Merge pull request #1657 from mojombo/safe-whitelist
A gem-based plugin whitelist for `safe` mode
2013-12-07 21:41:55 -08:00
Matt Rogers 350c9b3ab5 bump the version number in the code 2013-12-07 17:59:16 -06:00
Matt Rogers 362d28f11d Merge pull request #1779 from mojombo/no-duplication
Refactor post and draft object creation
2013-12-06 20:58:24 -08:00
Matt Rogers 9f1593299a Merge pull request #1775 from Ivoz/maruku
Update to maruku 0.7
2013-12-06 20:56:52 -08:00
Persa Zula 6a13f7dd57 Modifying enumerator for 1.8.7 2013-12-06 01:28:21 -05:00
Matt Rogers & Persa Zula e69d77b4df Refactor post and draft object creation
De-duplicate object creation between posts and drafts. Inject the name
dependency through a parameter
2013-12-06 01:28:21 -05:00
Parker Moore e91db82d26 I mean the argument and the local variable should be the same thing 2013-12-06 01:07:34 -05:00
Parker Moore f0fbc8f356 Refactor conditions for allowing plugins into a new method: Site#plguin_allowed? 2013-12-06 00:26:44 -05:00
Parker Moore 249b13a98a Hm, shouldn't need that call to 'rescue' in Site#whitelist 2013-12-06 00:24:59 -05:00
Parker Moore 5c9f9a4de8 The whitelist should be an array (not a file)
Default to `[]` if the key’s value is falsey
2013-12-06 00:23:22 -05:00
maul.esel f1869cda98 Merge branch 'master' into frontmatter-defaults 2013-12-05 19:29:57 +01:00
maul.esel 960e01cba8 move self.type to convertible 2013-12-05 09:14:31 +01:00
Matt Rogers 4a2e5af52e Merge pull request #1682 from envygeeks/patch-1
Sort plugins so people can have "load orders".
2013-12-04 18:40:04 -08:00
Matt Rogers 052a577938 Merge pull request #1765 from mojombo/tomlify
Add support for TOML config files
2013-12-04 18:28:20 -08:00
Matthew Iversen 5ed9d21ec7 Remove extraneous newlines from XHTML output 2013-12-05 12:04:55 +11:00
Parker Moore b637420373 Merge pull request #1755 from gregkare/more_trailing_whitespace
Remove trailing whitespace
2013-12-02 12:35:06 -08:00
David Sawyer 63122fdafc add a space between "find" and "an" 2013-12-01 19:11:16 -05:00
Parker Moore b8bbc6e08b require the TOML gem, idiot. 2013-11-29 23:33:38 -05:00
Parker Moore 22b95aee38 Give that LoadError a good message. 2013-11-29 23:33:25 -05:00
Parker Moore 1e32af47a6 Better config file parser error if it's not there. 2013-11-29 23:22:13 -05:00
Parker Moore 51706e8da7 Parse TOML or YAML in Jekyll::Configuration. 2013-11-28 22:11:56 -05:00
Matt Rogers 91a4c5611e Prep for the 1.3.1 release 2013-11-26 20:27:27 -06:00
Parker Moore eceebb23a6 Pagination generator should have :lowest priority 2013-11-26 12:45:00 -05:00
Greg Karékinian ce8e271b5d Remove trailing whitespace 2013-11-25 13:31:53 +01:00
maul.esel c5533e9016 restrict rescue-clause in IncludeTag#render
As it previously enclosed the whole method, it also
wrapped file validation errors, which is not meant to be.

Fixes #1745.
2013-11-22 06:58:52 +01:00
maul.esel 3888a24068 output including file for include tag error 2013-11-21 22:03:39 +01:00
Parker Moore dfffc2e72a Use Pathname#to_s instead of Pathname#to_path
Fixes #1723.
2013-11-16 13:12:59 -05:00
maul.esel 5e0af84993 fix include tag: don't store variable value
This fixes the bug reported in #1495 (comments).
2013-11-14 20:53:59 +01:00
Parker Moore 615d49ed66 Remove Site.whitelist attribute. 2013-11-04 23:24:21 -05:00
Parker Moore a4b9bab1dc Add --whitelist flag and internal logic 2013-11-04 23:24:21 -05:00
Parker Moore 480e35037b A start at a gem-based plugin whitelist for Pages. 2013-11-04 23:24:21 -05:00
Matt Rogers 6791f9fc12 Use the new `EntryFilter` class in `Site` 2013-11-04 21:35:53 -06:00
Matt Rogers 63713799cd Extract Site#filter_entries into its own class 2013-11-04 21:35:13 -06:00
Matt Rogers 65653fed84 Bump version to 1.3.0 2013-11-03 21:48:34 -06:00
Parker Moore 50fabc7b37 Update implementation of listen for v1.3.x 2013-11-01 23:16:04 -04:00
Jordon Bedwell 7a1f63d994 Sort plugins so people can have "load orders".
This allows for people to do something like "_plugins/1-autoload-global.rb" and have it load first and so on making it much easier to organize code and have a "header file" that does all the requiring up front if it's needed for all plugins.
2013-10-31 07:12:54 -05:00
Matt Rogers 9f63ddb4db Prepare for a 1.3.0.rc release 2013-10-28 20:26:36 -05:00
Parker Moore 3ab9841272 Fix 1.8.7 syntax errors. 2013-10-28 14:03:34 -04:00
Matt Rogers f697d12027 Merge pull request #1651 from liufengyun/jsonify
support jsonify filter
2013-10-23 20:50:14 -07:00
Matt Rogers 2287eed0c6 Merge pull request #1589 from dchest/better-watch
Replace directory_watcher with listen.
2013-10-23 22:38:56 -05:00
Matt Rogers 23ad7fa4bd Merge pull request #1557 from mojombo/require-gems-plugins
Add `gems` for better plugin management
2013-10-23 07:39:43 -07:00
liufengyun f971aebfb1 support jsonify filter 2013-10-22 23:52:22 +08:00
Dmitry Chestnykh 12ba0a541c Update listen to ~> 2.0. 2013-10-18 11:04:54 +02:00
Matt Rogers 0e784596a5 Merge pull request #1543 from maul-esel/fix-coderay
Add tests for special handling of kramdown's coderay options
2013-10-17 06:35:43 -07:00
maul.esel c2aa26280c extract pages.any?... in own method 2013-10-17 15:17:58 +02:00
maul.esel f0aac30491 remove duplicated render code for posts and pages 2013-10-17 12:07:30 +02:00
maul.esel 7232948b62 simplify relative permalink deprecation 2013-10-17 12:06:21 +02:00
maul.esel 2b275ef192 oops, fix minor indentation quirk 2013-10-15 14:38:45 +02:00
maul.esel dd851943c0 adjust frontmatter defaults precedence handling
Before, the bottom-most default set had highest precedence. Instead,
now the set with a longer i.e. more specific path has precedence and
sets with a type setting have precedence over those without one. In
case of equal precedence the bottom-most still wins.
2013-10-15 14:18:44 +02:00
maul.esel 20ea0c8d56 Merge branch 'master' into frontmatter-defaults 2013-10-14 19:44:06 +02:00
maul.esel 699eeba9f0 fix frontmatter defaults for custom paths
The Page#path or Post#path can be overriden by by a frontmatter
setting. This causes path-based frontmatter default detection to
fail. Add test to demonstrate this and fix it.
2013-10-14 19:16:53 +02:00
maul.esel 67a451ea84 fix slash handling for paths 2013-10-14 18:43:12 +02:00
Matt Rogers 0761769dda Merge pull request #1615 from benbalter/downcase-lexers
Downcase lexers before passing to Pygments
2013-10-10 18:48:00 -07:00
Juan Ignacio Donoso 87ef39aeb0 Add support for use of folders inside _layout path, closes #1622 2013-10-08 14:19:12 -03:00
Ben Balter 844cc615e4 actually downcase lexer 2013-10-06 15:55:16 -04:00
Brice 9ff245dbdb clean up comments to be more concise/uniform 2013-10-05 13:20:30 -04:00
Ben Balter d5f137bc86 downcase lexers before passing to Pygments 2013-10-05 11:26:26 -04:00
Parker Moore 310688297b I guess we'll wait until v2.0 to switch to absolute permalinks. 2013-10-04 15:03:05 -04:00
Parker Moore bf1d9a79c4 Add support for gem-based plugins. 2013-10-04 14:45:28 -04:00
maul.esel b00849544b fix error with variable as file name 2013-10-04 19:12:29 +02:00
Matt Rogers fef96d95e1 Merge pull request #1495 from maul-esel/variable-include
Variable {% include %}
2013-10-04 05:42:27 -07:00
maul.esel 76ada8c672 output correct path in case of liquid error in layout
As with includes, an error in a layout was reported on the
page that used the layout. Fix this by passing on the path
of the layout that is rendered.
2013-10-04 00:07:50 +02:00
maul.esel 809ab5e355 Move catching of liquid errors in include tags
The previous code only caught render-time errors. This change
makes it catch parse-time errors as well, such as unknown tags.
2013-10-03 23:56:58 +02:00
Matt Rogers 92750c3cfd Add parenthesis to the call for super 2013-10-02 21:51:32 -05:00
maul.esel 7a4ea086a1 Output path in case of render error in included file
Fixes #1591.
2013-10-01 23:02:50 +02:00
maul.esel 623fa14b3c Include tag: provide path in case of render error 2013-10-01 22:54:39 +02:00
maul.esel 2138dfc0ac Fix code to allow dots in variables 2013-10-01 22:31:11 +02:00
maul.esel a93795bcc0 implement variable retrieval in include tag
Fixes #1464.
2013-10-01 22:28:45 +02:00
Matt Rogers 9d4f9169e9 Merge pull request #1514 from maul-esel/tag-errors
Consistent error handling in Liquid tags
2013-09-30 20:54:42 -07:00
Matt Rogers cb4d15561c Merge pull request #1003 from liufengyun/data-sources
support data sources
2013-09-30 20:47:57 -07:00
liufengyun 760cbc7f91 Autoload yaml files under _data directory
The jekyll engine will autoload all yaml files(ends with .yml or .yaml)
under _data. If there's a file members.yml under the directory, then user
can access contents of the file through site.members.
2013-10-01 11:23:33 +08:00
Dmitry Chestnykh 58cab6b050 Handle destinations outside of source. 2013-09-30 05:55:38 +02:00
Dmitry Chestnykh dfaf1f45cc Remove require 'pathname': already included. 2013-09-30 05:11:15 +02:00
Dmitry Chestnykh 8fe25a6958 Replace directory_watcher with listen.
Directory_watcher consumed ~25% CPU on big Jekyll projects (depending on
the number of watched files), since it polled for changes every second.

Listen is easier on CPU, as it uses directory change notifications
provided by OS (currently OS X and Linux), falling back to polling when
they are not available.
2013-09-30 04:33:04 +02:00
Parker Moore 924285695c Print server address when launching a server.
Related to: https://github.com/mojombo/jekyll/issues/1583
2013-09-28 19:18:36 -04:00
Parker Moore 27347596ad Merge pull request #1449 from shigeya/config-encoding-and-yaml-opts
Adding "encoding" configuration (4th version)
2013-09-23 19:30:44 -07:00
Parker Moore c78c4159c0 Merge pull request #1571 from mojombo/non-destructive-array-concat
Use + instead of Array#concat
2013-09-23 07:16:41 -07:00
Edward Ball 943acc4395 Remove overly specific css from site template 2013-09-23 13:23:54 +01:00
Parker Moore a88a63da2d Don't use destructive Array#concat for Liquid Attribute arrays 2013-09-22 18:26:34 -04:00
maul.esel 1829c2734a 'gist' tag: switch to ArgumentError exception class
SyntaxError is reserved for Ruby's internal use.

Adjust the tests, including the call to liquid to
make it rethrow ArgumentErrors.
2013-09-19 23:23:04 +02:00
maul.esel 9409a3d034 raise exceptions in include tag 2013-09-19 14:32:15 +02:00
maul.esel 72c3bba56a Change error handling in 'post_url' tag: raise exception 2013-09-19 14:24:22 +02:00
maul.esel 06fb31544f Change error handling for gist tag: raise exception 2013-09-19 14:24:22 +02:00
Shigeya Suzuki c625ddf6cd Invoke File.read with or without options depends on Ruby version
- Extract option fetch method as a separate method
- Added File.read_with_options method to use
- With performance fix
2013-09-19 12:22:50 +09:00
Shigeya Suzuki 97e052df63 Pass encoding parameter as string, not an object 2013-09-19 12:21:26 +09:00
Shigeya Suzuki 8b892ed735 read_yaml to accept optional parameter to override defaults 2013-09-19 12:21:25 +09:00
MURAOKA Taro 4cb24f4b87 consider a case of "site" is unavailable in Convertible 2013-09-19 12:21:25 +09:00
MURAOKA Taro f4c2383d3c write document for config.encoding 2013-09-19 12:21:25 +09:00
MURAOKA Taro 8a28d80690 add encoding for configuration 2013-09-19 12:21:25 +09:00
Matt Rogers 793eb96a77 Merge pull request #1490 from penibelst/allow-include-read-override
Extract include tag read file in a method
2013-09-18 19:34:45 -07:00
Anatol Broder ec85c49de3 Change exception type 2013-09-17 22:11:56 +02:00
Anatol Broder 7cec996f90 Validate the entire markup as soon as possible 2013-09-17 21:41:11 +02:00
Anatol Broder 25519b38f6 Validate file name as soon as possible 2013-09-17 20:57:01 +02:00
Anatol Broder 8017548bd0 Rename variable 2013-09-17 20:46:01 +02:00
Anatol Broder 7f62e69837 Remove obvious comment 2013-09-17 20:36:33 +02:00
Anatol Broder e5f99e2798 Remove return 2013-09-17 20:35:18 +02:00
Anatol Broder 3e2ab58d56 Fix unruby paradigm 2013-09-17 20:34:04 +02:00
Anatol Broder a42e57f274 Rename constants 2013-09-17 20:14:41 +02:00
Matt Rogers de49342324 Merge pull request #1556 from maul-esel/dest-match
Fix up matching against source and destination when the two locations are similar.
2013-09-16 18:34:22 -07:00
Matt Rogers 454e038fad Require 'pathname' 2013-09-16 20:29:57 -05:00
Anatol Broder 3dadc94ce4 Don’t repeat yourself 2013-09-16 23:16:41 +02:00
maul.esel 299cb93147 improve path checking, now using Pathname instead of regex 2013-09-16 15:42:59 +02:00
maul.esel bec4a07c12 Fix handling of source-dest matching being too aggressive
Fixes #1130.
2013-09-16 14:41:20 +02:00
Anatol Broder 891ea8f604 People can symlink it if they want in unsafe mode 2013-09-16 08:37:07 +02:00
Anatol Broder 081b974114 Resolve conflict 2013-09-16 08:19:56 +02:00
Anatol Broder 79f50b0568 Resolve conflict 2013-09-16 08:15:10 +02:00
Parker Moore 6f053fbc8c Update gemspec & version to v1.2.1 2013-09-14 20:59:06 -04:00
maul.esel 29d0841e97 #to_sym is called by #symbolize_keys 2013-09-13 14:06:16 +02:00
Parker Moore 4b8bb68e56 Cleanup newlines in Commands::Serve 2013-09-12 14:05:16 -04:00
Parker Moore c926596be7 Print better messages for detached server. Mute output on detach. 2013-09-12 14:02:52 -04:00
maul.esel 5775603f49 add inline code docs 2013-09-11 17:49:34 +02:00
maul.esel 0874c14b2c improve validation code 2013-09-11 17:37:15 +02:00
maul.esel accea6648c fix for Ruby 1.8 2013-09-11 17:27:34 +02:00
maul.esel fb911af2cd Retrieve frontmatter defaults when retrieved internally
This is for example possible for layout defaults to take effect.
2013-09-11 00:57:18 +02:00
maul.esel 9d44d3290b make frontmatter defaults available to liquid 2013-09-11 00:55:57 +02:00
maul.esel b3fdaa9792 add a class `FrontmatterDefaults` for handling of frontmatter defaults 2013-09-11 00:55:28 +02:00
maul.esel 3ccd8dad31 Add a method to retrieve type to post, page and draft 2013-09-11 00:48:05 +02:00
Ishibashi Hideto 421e58ad59 a patch for the issue: [Liquid doesn't render my partial · Issue #1519 · mojombo/jekyll](https://github.com/mojombo/jekyll/issues/1519) 2013-09-10 23:12:15 +09:00
Matt Rogers d8e0f009d2 Merge pull request #1363 from koron/stop-reverse-lookup
disable reverse lookup
2013-09-06 20:37:31 -07:00
Parker Moore afe1291f0c Update Jekyll::VERSION 2013-09-06 22:23:31 -04:00
Matt Rogers 3212aac4bc Merge pull request #1481 from mojombo/pathawks-patch-1
Expose Jekyll version to templates: `jekyll.version`
2013-09-05 13:24:37 -07:00
maul.esel 09ed340835 Fix include tag to avoid NameError 2013-09-02 14:25:13 +02:00
Parker Moore b7e34175d0 Put version under 'jekyll' namespace. 2013-08-30 18:54:03 -04:00
Parker Moore 20f44be87f Merge branch 'patch-1' of git://github.com/pathawks/jekyll into pathawks-patch-1
* 'patch-1' of git://github.com/pathawks/jekyll:
  Use proper Ruby syntax for constant
  Expose Jekyll version to templates
2013-08-30 18:50:58 -04:00
Matt Rogers a9e2a74ea6 Merge pull request #1341 from maul-esel/minor-refactors
Minor refactors
2013-08-29 20:21:08 -07:00
Parker Moore 0d890e4b70 Merge pull request #944 from x3ro/permalink-special-characters
WIP - Improve permalink generation for URLs with special characters
2013-08-28 15:02:20 -07:00
Parker Moore 8ea336945c Merge pull request #1429 from maul-esel/refactor-cleanup
Refactor `Site#cleanup` into Jekyll::Site::Cleaner class
2013-08-26 14:01:53 -07:00
Matt Rogers 4fa4ad2232 Merge pull request #1443 from ddavison/detachment
Detachment
2013-08-24 20:16:42 -07:00
ddavison b163bf637e final mods 2013-08-24 21:31:05 -04:00
maul.esel 4c015fc5ff move Jekyll::Cleaner to Jekyll::Site::Cleaner 2013-08-23 20:42:27 +02:00
maul.esel dbd368f6ee remove no longer necessary condition 2013-08-23 20:41:13 +02:00
ddavison 9681f3a776 adding default configuration to false 2013-08-21 21:00:18 +00:00
ddavison 4e52869f0f adding detachment functionality 2013-08-21 20:53:01 +00:00
Frederic ROS bca28056ef Fix a misleading typo 2013-08-21 14:53:10 +02:00
maul.esel d28858a9e9 put the Cleaner instance in a `Site#site_cleaner` method 2013-08-19 20:15:54 +02:00
maul.esel 0b3005b3b4 make obsolete_files a method (@mattr-) 2013-08-19 20:01:36 +02:00
Matt Rogers 820f526569 Merge pull request #1389 from mojombo/doctor-conflicting-permalinks
Implement URL conflict checking in `jekyll-doctor`.
2013-08-18 08:57:49 -07:00
maul.esel 506cdc5179 include: more helpful error message for symlinks 2013-08-18 17:08:42 +02:00
maul.esel 5d7dba476c change site_cleaner to use attr_accessor 2013-08-17 22:33:01 +02:00
Parker Moore 8b8fa4da4e Use Doctor#healthy? and ensure _all_ items are checked before process quits. 2013-08-17 15:16:14 -04:00
maul.esel 5da13d2b66 Refactor `Site#cleanup`
Move the cleanup logic out into a separate class,
`Jekyll::Cleaner`.
2013-08-17 17:14:08 +02:00
maul.esel 95719fa4ce improve error handling in include tag
* Reduce condition to one-liner
* Remove `self`
* Implicit return value
* Explicit error message for symlinks
2013-08-17 16:24:06 +02:00
Pat Hawks 32e55e7717 Use proper Ruby syntax for constant 2013-08-16 21:01:09 -07:00
Pat Hawks 2744b66fac Expose Jekyll version to templates
Make available `site.version` to liquid
2013-08-16 20:30:26 -07:00
Parker Moore 5f4efd34bd When a Liquid Exception is caught, show the full path (rel to site source) 2013-08-12 21:19:54 +02:00
Parker Moore d4300be758 Merge branch 'permalink-no-dir' of git://github.com/maul-esel/jekyll into maul-esel-permalink-no-dir
* 'permalink-no-dir' of git://github.com/maul-esel/jekyll:
  test per-post permalinks
  do not force the permalink to be a dir if it ends on .html

Conflicts:
	features/step_definitions/jekyll_steps.rb
2013-08-11 12:08:56 +02:00
Anatol Broder affffb4ed4 Update dummy email address to example.com domain 2013-08-10 15:29:33 +02:00
Anatol Broder 381a8148e3 Correct the social dummie URLs
Twitter and Github seem to always force HTTPS. They don’t use backslashes after the username.
2013-08-09 17:09:24 +02:00
Parker Moore 7d26be5102 Call ruby's 'abort' if the site is unhealthy 2013-08-08 18:33:55 +02:00
Parker Moore 318a379747 Nuke comment. 2013-08-08 18:32:13 +02:00
Parker Moore bc3dccf0e5 Merge pull request #1386 from mojombo/disable-excerpts
Disable automatically-generated excerpts with option
2013-08-08 02:39:06 -07:00
Nick Fagerlund 9ca7f70d70 Fix 'undefined method `encoding` for "mailto"' errors w/ Ruby 1.8 and Kramdown > 0.14.0
When using Ruby 1.8.7 and Kramdown 0.14.0 and newer, the following build error
would occur if any page in your site contained a `<name@example.com>` email
address link:

Generating...   Conversion error: There was an error converting 'contribute.markdown'.
/Users/nick/Documents/puppet-docs/vendor/bundle/ruby/1.8/gems/kramdown-1.0.2/lib/kramdown/converter/html.rb:404:in `obfuscate': undefined method `encoding' for "mailto":String (NoMethodError)

See also:
http://rubyforge.org/tracker/index.php?func=detail&aid=29750&group_id=7403&atid=28673

This problem traced back to the following line in the Kramdown source:

result.force_encoding(text.encoding) if result.respond_to?(:force_encoding)

Strings aren't supposed to respond to the :force_encoding method in Ruby < 1.9,
but lib/jekyll/core_ext.rb was modifying the string class like so:

def force_encoding(enc)
  self
end

Strings still won't respond to :encoding, though, so we get an error when
Kramdown tries to read the incoming encoding and everything will blow up.

An ack of the codebase suggests that this was only added so we could force an
encoding for rdiscount on 1.9 without having to check whether we were running
under 1.8. Since testing for said method to learn whether one is running under a
1.9-like encoding regime seems to be a thing in libraries we rely on, we
shouldn't insert this dummy method without also dummying every other part of the
Ruby 1.9+ encoding system.

This commit removes the dummy :force_encoding method to stop poisoning core
classes for libraries we use, and moves the adjustment for 1.9-like encoding
regimes to the one place where it's needed.
2013-08-07 20:07:54 -07:00
Parker Moore 95534733ed should_generate_excerpt? ~> generate_excerpt? 2013-08-08 00:35:42 +02:00
Parker Moore cb52535c03 Merge pull request #1390 from mojombo/better-errors
Catch and fix (somehow) common configuration errors
2013-08-07 15:28:16 -07:00
Parker Moore 826293ebe3 Merge pull request #1364 from koron/write-in-binary-mode
use binary mode when writing file.
2013-08-07 08:12:27 -07:00