{"action":"created","issue":{"url":"https://api.github.com/repos/jekyll/jekyll/issues/3553","labels_url":"https://api.github.com/repos/jekyll/jekyll/issues/3553/labels{/name}","comments_url":"https://api.github.com/repos/jekyll/jekyll/issues/3553/comments","events_url":"https://api.github.com/repos/jekyll/jekyll/issues/3553/events","html_url":"https://github.com/jekyll/jekyll/pull/3553","id":60231330,"number":3553,"title":"prototype of jekyll hooks, encapsulated","user":{"login":"stevecrozz","id":133328,"avatar_url":"https://avatars.githubusercontent.com/u/133328?v=3","gravatar_id":"","url":"https://api.github.com/users/stevecrozz","html_url":"https://github.com/stevecrozz","followers_url":"https://api.github.com/users/stevecrozz/followers","following_url":"https://api.github.com/users/stevecrozz/following{/other_user}","gists_url":"https://api.github.com/users/stevecrozz/gists{/gist_id}","starred_url":"https://api.github.com/users/stevecrozz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevecrozz/subscriptions","organizations_url":"https://api.github.com/users/stevecrozz/orgs","repos_url":"https://api.github.com/users/stevecrozz/repos","events_url":"https://api.github.com/users/stevecrozz/events{/privacy}","received_events_url":"https://api.github.com/users/stevecrozz/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jekyll/jekyll/labels/Feature","name":"Feature","color":"1d870c"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/jekyll/jekyll/milestones/19","html_url":"https://github.com/jekyll/jekyll/milestones/3.0","labels_url":"https://api.github.com/repos/jekyll/jekyll/milestones/19/labels","id":547667,"number":19,"title":"3.0","description":null,"creator":{"login":"parkr","id":237985,"avatar_url":"https://avatars.githubusercontent.com/u/237985?v=3","gravatar_id":"","url":"https://api.github.com/users/parkr","html_url":"https://github.com/parkr","followers_url":"https://api.github.com/users/parkr/followers","following_url":"https://api.github.com/users/parkr/following{/other_user}","gists_url":"https://api.github.com/users/parkr/gists{/gist_id}","starred_url":"https://api.github.com/users/parkr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/parkr/subscriptions","organizations_url":"https://api.github.com/users/parkr/orgs","repos_url":"https://api.github.com/users/parkr/repos","events_url":"https://api.github.com/users/parkr/events{/privacy}","received_events_url":"https://api.github.com/users/parkr/received_events","type":"User","site_admin":false},"open_issues":14,"closed_issues":34,"state":"open","created_at":"2014-01-25T21:57:45Z","updated_at":"2015-04-01T15:15:07Z","due_on":null,"closed_at":null},"comments":42,"created_at":"2015-03-07T23:47:57Z","updated_at":"2015-04-10T21:18:45Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/jekyll/jekyll/pulls/3553","html_url":"https://github.com/jekyll/jekyll/pull/3553","diff_url":"https://github.com/jekyll/jekyll/pull/3553.diff","patch_url":"https://github.com/jekyll/jekyll/pull/3553.patch"},"body":"This is a second attempt at #3498 (adding hooks to Jekyll). In my last attempt @envygeeks had some complaints about the lack of encapsulation. This PR is an attempt to address those concerns and try out a new idea. This is definitely not ready to merge, but I wanted to get some eyes on it before I implement and write tests for the whole thing. The hooks concept is inspired by, but in this instance not perfectly compatible with octopress-hooks, so it's a bit of a departure from #3392 by @parkr, but I think it nicely encapsulates the hook logic.\r\n\r\nHere's a practical example of how you could use one of these hooks to do something useful: https://github.com/stevecrozz/featherblade"},"comment":{"url":"https://api.github.com/repos/jekyll/jekyll/issues/comments/91694222","html_url":"https://github.com/jekyll/jekyll/pull/3553#issuecomment-91694222","issue_url":"https://api.github.com/repos/jekyll/jekyll/issues/3553","id":91694222,"user":{"login":"stevecrozz","id":133328,"avatar_url":"https://avatars.githubusercontent.com/u/133328?v=3","gravatar_id":"","url":"https://api.github.com/users/stevecrozz","html_url":"https://github.com/stevecrozz","followers_url":"https://api.github.com/users/stevecrozz/followers","following_url":"https://api.github.com/users/stevecrozz/following{/other_user}","gists_url":"https://api.github.com/users/stevecrozz/gists{/gist_id}","starred_url":"https://api.github.com/users/stevecrozz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevecrozz/subscriptions","organizations_url":"https://api.github.com/users/stevecrozz/orgs","repos_url":"https://api.github.com/users/stevecrozz/repos","events_url":"https://api.github.com/users/stevecrozz/events{/privacy}","received_events_url":"https://api.github.com/users/stevecrozz/received_events","type":"User","site_admin":false},"created_at":"2015-04-10T21:18:45Z","updated_at":"2015-04-10T21:18:45Z","body":"Personally, I do it like this: https://github.com/stevecrozz/lithostech.com/blob/master/_plugins/ext.rb\r\n\r\nBut my approach certainly has its limitations and I'm fine with doing it differently. @parkr, can we chat in real-time about this on IRC? I'm stevecrozz on freenode..."}}