Commit Graph

1640 Commits

Author SHA1 Message Date
Terry Schmidt 0371b69952 Set categor[y|ies] on post if they appear in site frontmatter defaults 2014-05-09 13:34:13 -05:00
Ben Balter bf3a20b2d7 allow json files in _data dir 2014-05-09 10:13:12 -04:00
Anatol Broder fb523722b5 Fruity variables 2014-05-09 09:21:24 +02:00
Anatol Broder df3c163eeb Use item_property 2014-05-09 08:53:16 +02:00
Anatol Broder d96f39360b Revert "Make it fail"
This reverts commit c89e7539b86a483a2f8b14dd766ad90da1eb9773.
2014-05-09 08:53:16 +02:00
Anatol Broder fd1778203d Make it fail 2014-05-09 08:53:16 +02:00
Anatol Broder 9ba89b9ab1 Try item_property 2014-05-09 08:53:15 +02:00
Anatol Broder ae7e485474 Add hash_property 2014-05-09 08:44:40 +02:00
Parker Moore 036823cd06 Bump to 💎 v2.0.3 2014-05-08 22:43:04 -04:00
Parker Moore 2d040c1aaa Use Jekyll.logger for --watch error message. 2014-05-08 22:27:55 -04:00
Parker Moore 81ff5ed7aa Save --watch from errors.
Fixes #2355.
2014-05-08 22:22:11 -04:00
Aaron Broder a5c1a01965 Added item_property to where filter 2014-05-08 11:35:51 -07:00
Parker Moore 348bcae763 If the input is a string but Time.parse can't parse it, maybe it's a UNIX timestamp.
Fixes #2339
2014-05-07 15:48:13 -04:00
Parker Moore 77c0249d72 Use site.title instead of site.name in site template
Fixes #2324.
2014-05-07 15:11:50 -04:00
Parker Moore f2f2ebfa4f Register subclasses of subclasses of Jekyll::Plugin
The Sass and SCSS converters are practically the same – only different in
the input syntax and file extension. As such, we've created
`Jekyll::Converters::Scss` which is a subclass of `Jekyll::Converter`, and
`Jekyll::Converters::Sass` which is a subclass of
`Jekyll::Converters::Scss`. When `Site#instantiate_classes` is called on
`Jekyll::Converter`, it only instantiates the `Scss` converter, not the
`Sass` converter. This change fixes that.

Fixes #2334.
2014-05-07 14:59:08 -04:00
Parker Moore 8ad4dd332a Don't fail if any of the path objects are nil.
Fixes #2325
2014-05-07 14:01:36 -04:00
Alberto Grespan da9b28d35c Fix site template permalink typo 2014-05-07 11:36:14 -04:30
Gabe Ortiz 21f84e1548 Update gist.rb comments only
Strictly updated the reference to Examples and Valid Syntax to be inline with jekyll/jekyll-help#32
2014-05-07 07:34:00 -04:00
Parker Moore 216f1150cd The last of the site template prepending. 2014-05-07 00:31:53 -04:00
Parker Moore c71a4717dd Prepend url, too, in feed.xml. 2014-05-07 00:09:12 -04:00
Parker Moore ac666490d2 Release 2.0.2 2014-05-06 23:59:49 -04:00
Parker Moore 97e9fb29b0 Default baseurl to "" rather than to "/"
Also a fix for #2317
2014-05-06 23:54:56 -04:00
Parker Moore 2dec333910 Set baseurl to nothing in new template site.
Previously, it caused all sorts of errors.
Fixes #2317.
2014-05-06 23:50:58 -04:00
Parker Moore 0a0d7858c6 Release 2.0.1 2014-05-06 21:57:33 -04:00
Parker Moore 64cce065e6 Require kramdown instead of maruku.
CRAP CRAP CRAP whoops.
2014-05-06 21:55:11 -04:00
Parker Moore 344906deb9 Release 2.0.0. 2014-05-06 20:11:44 -04:00
Matt Rogers 5c109ee8dc Merge pull request #2299 from penibelst/sort-nils 2014-05-06 16:49:40 -05:00
Anatol Broder 1e0d9f899b Follow Ruby Styleguide 2014-05-06 22:49:49 +02:00
Parker Moore b6cfb8aa4f Merge pull request #2309 from jekyll/remove-unreleased-notes 2014-05-06 16:30:15 -04:00
Parker Moore c2d3f9d5b5 Close the file descriptor in has_yaml_header?
Previous method caused a problem where the calling Dir.chdir to get the next
directory's entries would cause the infamous 'Too many open files - getcwd'
error. Fixes #2279.
2014-05-06 15:58:25 -04:00
Anatol Broder 7c1709fab4 Change nils argument to string 2014-05-06 21:36:13 +02:00
Parker Moore 00f21ee93c Add `output` to Document#to_liquid 2014-05-06 14:51:56 -04:00
Parker Moore 6c1bb76316 Merge pull request #2303 from jekyll/jbranchaud-adding_exclude_tests 2014-05-06 14:40:18 -04:00
Parker Moore a7776f8279 Set relative_permalinks to false to deprecate! 2014-05-06 13:04:12 -04:00
Parker Moore 2aa8908948 Stevenson now uses symbols instead of integers to set log level 2014-05-06 13:03:56 -04:00
Parker Moore 63e959e4e1 Use Jekyll.logger, never puts 2014-05-06 13:02:35 -04:00
Parker Moore fda3461c5a We deprecated relative permalinks in 2.0 2014-05-06 13:02:17 -04:00
Parker Moore 413de3a0ee Also exclude an entry if it starts with one of the items given in the exclude key. 2014-05-06 12:46:41 -04:00
Parker Moore a854a6a709 Merge pull request #2127 from XhmikosR/css 2014-05-06 12:32:52 -04:00
Parker Moore c8a715d09b Merge pull request #2295 from jekyll/add-documents-listing 2014-05-06 12:28:58 -04:00
Parker Moore 0087143b88 Merge pull request #2301 from TheTomThorogood/short_year_permalink 2014-05-06 12:14:25 -04:00
Parker Moore 3755437d08 Write test for site.documents. 2014-05-06 00:11:35 -04:00
Anatol Broder 19e704f408 Override the sort filter 2014-05-05 10:26:46 +02:00
Parker Moore fc98f06ed7 Refactor docs_to_write 2014-05-04 21:22:57 -04:00
Parker Moore 54b74fafba Add documents to site payload 2014-05-04 21:22:51 -04:00
Parker Moore a2169bf0c4 Have separate methods for all docs and just the docs that are being written. 2014-05-04 21:19:09 -04:00
Ben Balter a0bbf7703b make template site easier to customize 2014-05-04 21:07:23 -04:00
TheTomThorogood f2849ac269 Add :short_year to url_placeholders 2014-05-05 00:12:07 +09:30
Parker Moore 3af22f12bf Set content-type to text/html with utf-8 charset.
Fixes #2289
2014-05-03 18:51:55 -04:00
Valery Tolstov 4ae8fefb95 Remove literal lang name from class, fix #2284
If code language is C classes for comment and language are the same
2014-05-03 20:23:28 +04:00
XhmikosR 10f85eb856 Add missing vendor prefixed properties. 2014-05-02 09:15:03 +03:00
XhmikosR 0463399389 Remove duplicate properties. 2014-05-02 09:15:02 +03:00
John Piasetzki 3e6a6ffb52 Update util functions
Cribbed from http://api.rubyonrails.org/classes/Hash.html#method-i-symbolize_keys
2014-04-28 02:06:41 -04:00
John Piasetzki cf81331b39 Revert back to an intialize more similar to the original 2014-04-27 23:21:00 -04:00
John Piasetzki 446ca8f73d Context is not used within any of the renders so no need to pass it 2014-04-27 23:21:00 -04:00
John Piasetzki d6bd735aff Refactor highlighting
Extract some of the common logic from the renderers.
2014-04-27 23:20:00 -04:00
Parker Moore 513e77635b Refactor 'jekyll serve' command. 2014-04-27 19:02:33 -04:00
Robin Dupret 3a610882f6 Avoid duplicated output using highlight tags
While using Rouge and an `highlight` tag, the output was duplicated
since the `output` variable in the Liquid tag definition was equal to
the highlighter's prefix value and the `<<` method changes its receiver.

Therefore, we should simply define an empty string and append the prefix
if it is present.
2014-04-27 12:22:40 +02:00
Parker Moore 4e6d268ef3 Bump 💎 version. 2014-04-25 23:16:00 -04:00
Parker Moore 068d921ef6 Fix up docs for collections.
#2238.
2014-04-25 23:15:18 -04:00
Parker Moore 6225073095 Use the 'output' key instead of 'write' for writing out collections' document files. 2014-04-25 19:47:35 -04:00
Parker Moore c906dfdf71 TEST THE COLLECTIONS 2014-04-24 14:01:23 -04:00
Parker Moore dd4fe87f69 Use Hash.new instead of hash literal 2014-04-24 13:59:25 -04:00
Parker Moore fb39b41ffb NO MORE DATA COLLECTION I CAN'T HANDLE IT 2014-04-24 13:59:25 -04:00
Parker Moore b74c90dc20 Extract Collections metadata from site config 2014-04-24 13:59:24 -04:00
Parker Moore 0dc680df0b Always render collections, just don't always write them 2014-04-24 13:59:24 -04:00
Parker Moore 7be78de93a Don't read the collection if it's the data collection 2014-04-24 13:59:24 -04:00
Parker Moore f1a422dfff Don't pretend there is a collections setter 2014-04-24 13:59:24 -04:00
Parker Moore a27e5825b9 Nil-out `@collections` so `#collections` will re-compile 2014-04-24 13:59:24 -04:00
Parker Moore fd98d5b1e6 Fetch collection names agnostically regarding the data structure of config['collections'] 2014-04-24 13:59:24 -04:00
Parker Moore 330005d932 Reset the collections hash on #reset.
Fixes #2234.
2014-04-24 13:59:24 -04:00
Parker Moore 4de2be8c5f Add Jekyll::LiquidExtensions.lookup_variable
To use, just include `Jekyll::LiquidExtensions` as you please:

```ruby
class SayHi < Liquid::Tag
  include Jekyll::LiquidExtensions

  def initialize(tag_name, markup, tokens)
    @markup = markup.strip
  end

  def render(context)
    "hi #{lookup_variable(context, @markup)}"
  end
end
```

Fixes #2071.
2014-04-22 14:27:47 -04:00
Parker Moore 9db5a1a6ce Merge pull request #2205 from jekyll/maul-esel-frontmatter-defaults 2014-04-21 23:01:05 -04:00
Ben Balter 6f0bebdfda convert input to string before xml escaping 2014-04-18 16:54:48 -04:00
Parker Moore 571fb95cc1 Only read in 5 bytes when checking for YAML header.
#2211 #2210
2014-04-15 09:48:44 -04:00
Parker Moore 29fdc0946a Use +rb switches when reading in file for checking existence of YAML header.
Fixes #2228.
2014-04-15 09:46:53 -04:00
Parker Moore b0cf022983 Release 2.0.0.alpha.3 2014-04-14 23:17:32 -04:00
Parker Moore 5a6f1d42a9 Fix #filtered_entries so it returns a new Array if the directory doesn't exist 2014-04-14 23:03:19 -04:00
Parker Moore 696aea211a Don't gather any entries if the collection directory doesn't exist 2014-04-14 22:56:23 -04:00
Parker Moore a1af95c34e Clean up some code per @baweaver's suggestions. 2014-04-14 22:46:22 -04:00
Parker Moore ad7efb23e6 Code/docs cleanup, props @baweaver 2014-04-14 22:46:22 -04:00
Parker Moore af61451f87 Use #error instead of #warn when telling the user not to use a custom data source 2014-04-14 22:46:22 -04:00
Parker Moore 62551b5ff9 Include data in the array of collections 2014-04-14 22:46:22 -04:00
Parker Moore aa502348e5 Filter entries in the collection per EntryFilter#filter 2014-04-14 22:46:21 -04:00
Parker Moore 323ea0ef73 EntryFilter#special? should also check the base name of the entry 2014-04-14 22:46:21 -04:00
Parker Moore f0e68d7d86 Expose collections as site.<collection_name> in Liquid as array of docs. 2014-04-14 22:46:21 -04:00
Parker Moore 00ca09a2ea Add comments for Document 2014-04-14 22:46:21 -04:00
Parker Moore a307aff858 Do not render any asset files with Liquid. 2014-04-14 22:46:21 -04:00
Parker Moore 5ae1c34857 Add comments for Collection 2014-04-14 22:46:21 -04:00
Parker Moore be769dcf00 SANITIZE THE collection name plz. 2014-04-14 22:46:21 -04:00
Parker Moore 37a7236e20 Homagah it all renders I think. 2014-04-14 22:46:21 -04:00
Parker Moore a15a584136 Don't let that render get you down. 2014-04-14 22:46:21 -04:00
Parker Moore 75f49a751e OMG COLLECTIONS ARE RENDERING CALL THE POLICE 2014-04-14 22:46:21 -04:00
Parker Moore f082eca791 GUYS failing test for rendering 2014-04-14 22:45:20 -04:00
Parker Moore cefe99bed2 Sort the docs based on path 2014-04-14 22:44:29 -04:00
Parker Moore 90807ac6e7 DEM TESTS 2014-04-14 22:44:29 -04:00
Parker Moore 08162dbb50 Hey girl, i heard you like YAML. 2014-04-14 22:44:29 -04:00
Parker Moore 50b46d7bee OMG it's happening ~*Collections*~ 2014-04-14 22:44:29 -04:00
Parker Moore a77c92aebe Replace load-in of YAML data with Jekyll::Document logic.
COLLECTIONS IS COMING
2014-04-14 22:43:09 -04:00
Matt Rogers 6be33cf6ef Merge pull request #1492 from maul-esel/publishing 2014-04-14 20:17:01 -05:00
Parker Moore 4f66db6c38 Merge pull request #2211 from jekyll/pgp-key-header-frontmatter 2014-04-14 12:59:59 -04:00
Ben Balter b666ac787b Stricter start of line check via \A 2014-04-11 15:15:37 -04:00
Ben Balter 387cf2181a use regex to verify yaml existence 2014-04-11 08:00:40 -04:00
maul.esel 46a5ab99f9 Support "published: false" for pages
Fixes 1034.
2014-04-07 16:22:04 +02:00
maul.esel 3a330dc7fc Use Publisher instead of Post#published? 2014-04-07 16:20:13 +02:00
maul.esel 26663a6cf9 add the Publisher class to handle publishing logic 2014-04-07 16:17:51 +02:00
maul.esel 91e9ecfa63 Add an --unpublished option to render unpublished posts
Fixes #1337, #469.
2014-04-07 16:17:12 +02:00
Marcus Stollsteimer fec6b59950 Use File.exist? instead of deprecated File.exists? 2014-04-06 13:31:34 +02:00
Ben Balter 823c863a53 require newline after start of yaml header 2014-04-05 17:34:08 -04:00
Parker Moore 955dc38400 Deep merge data overrides into defaults. 2014-04-05 15:42:53 -04:00
Parker Moore 09c6ff4f9c Post#published is no longer a thing. 2014-04-04 15:34:42 -04:00
Parker Moore 6bd07501e8 Merge branch 'frontmatter-defaults' of git://github.com/maul-esel/jekyll into maul-esel-frontmatter-defaults
* 'frontmatter-defaults' of git://github.com/maul-esel/jekyll:
  move self.type to convertible
  oops, fix minor indentation quirk
  document frontmatter defaults precedence
  adjust frontmatter defaults precedence handling
  change cucumber feature to test for precedence too
  fix frontmatter defaults for custom paths
  more robust cucumber features
  fix slash handling for paths
  move cucumber features to own file
  fix minor docs quirk
  improve path checking, now using Pathname instead of regex
  Add site documentation for the new feature
  add inline code docs
  improve validation code
  fix for Ruby 1.8
  Add basic cucumber features for frontmatter defaults
  Retrieve frontmatter defaults when retrieved internally
  make frontmatter defaults available to liquid
  add a class `FrontmatterDefaults` for handling of frontmatter defaults
  Add a method to retrieve type to post, page and draft

Conflicts:
	lib/jekyll.rb
	lib/jekyll/convertible.rb
	lib/jekyll/core_ext.rb
	lib/jekyll/page.rb
	lib/jekyll/post.rb
2014-04-04 15:32:27 -04:00
Parker Moore f3c54fcf50 Merge pull request #2189 from benhanzl/move_rouge_loading 2014-04-02 22:38:05 -04:00
Parker Moore 9ace48c835 Merge pull request #2197 from jekyll/plugin-manager 2014-04-02 22:15:40 -04:00
Parker Moore 1863057b7e Ok handle the plugins_path stuff in the PluginManager. 2014-04-02 22:06:38 -04:00
Parker Moore 4a4c8846f4 Fetching/determining the plugin path is beyond this it's kind of sad. 2014-04-02 21:59:15 -04:00
Parker Moore 8ccdee4035 STRIP ALL THE NEWLINES FROM HIGHLIGHTED CODE ok just the ones at the beginning and end 2014-04-02 14:37:22 -04:00
Parker Moore 2a3f0c0ec3 Strip content of the {% highlight %} block
A fix for #1801
2014-04-02 14:11:19 -04:00
Parker Moore 806f43cdbc Merge pull request #1568 from nitoyon/url-escape 2014-04-02 14:09:09 -04:00
Lincoln Mullen 52ac2b3850 Permit YAML blocks to end with three dots
The YAML spec permits blocks to end with three dots (...) in addition to
three dashes (---): http://www.yaml.org/spec/1.2/spec.html#id2760395. Some
programs that work with Jekyll (e.g., Pandoc) prefer the dots to dashes. This
commit permits the YAML metadata block to end with either dots or dashes. It
includes tests.

Signed-off-by: Parker Moore <parkrmoore@gmail.com>
2014-04-02 14:06:22 -04:00
Parker Moore 14d9902586 Merge pull request #2200 from fabianrbz/remove_unnecessary_post 2014-04-01 23:10:37 -04:00
Fabian Rodriguez 04666cd0cf remove default post with invalid date 2014-04-01 22:32:12 -03:00
Parker Moore 5d761a1c2b Require 'plugin_manager' in lib/jekyll.rb 2014-04-01 18:44:37 -04:00
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