Use GitHub's HTML::Pipeline, in Jekyll!
Clone or download
Latest commit 0cffeb7 Jun 28, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
test
.gitignore Port over the code from when I commited to core Dec 28, 2013
.rubocop.yml
.travis.yml
Gemfile
LICENSE.txt
README.md
Rakefile
jekyll-html-pipeline.gemspec

README.md

Build Status

jekyll-html-pipeline

An HTML::Pipeline, for Jekyll.

Installation

In your _config.yml file, add this gem:

gems:
  - jekyll-html-pipeline

Configuration

You'll need to be running a Jekyll version after 2.0.0, which is when custom Markdown filters were introduced. In your _config.yml file, indicate that you want to use html_pipeline:

markdown: HTMLPipeline

Next, create an html_pipeline key, and indicate which filters you want to include:

markdown: HTMLPipeline
html_pipeline:
  filters:
    - "markdownfilter"
    - "sanitizationfilter"
    - "emojifilter"
    - "mentionfilter"

Finally, some filters require a context object. You can define these next:

markdown: HTMLPipeline
html_pipeline:
  filters:
    - "markdownfilter"
    - "sanitizationfilter"
    - "emojifilter"
    - "mentionfilter"
  context:
    asset_root: "http://foo.com/icons"
    base_url:   "https://github.com/"

Keep in mind that filter dependencies are not bundled, so you'll need to add these in yourself.

Custom filters

Custom filters can be designed the same as in HTML::Pipeline.

Check out the test filter for an example. Because computers are stupid, remember that case-sensitivity matters when adding the custom filter to filters.