Module: Sourcerer::Jekyll
- Defined in:
- lib/sourcerer/jekyll.rb,
lib/sourcerer/jekyll/liquid/tags.rb,
lib/sourcerer/jekyll/bootstrapper.rb,
lib/sourcerer/jekyll/monkeypatches.rb,
lib/sourcerer/jekyll/liquid/filters.rb,
lib/sourcerer/jekyll/liquid/file_system.rb
Overview
This module encapsulates the logic for initializing a Jekyll-like Liquid templating environment. It loads necessary plugins, applies monkeypatches, and registers custom Liquid filters and tags.
Defined Under Namespace
Modules: Bootstrapper, Liquid, Monkeypatches
Class Method Summary collapse
-
.initialize_liquid_runtime ⇒ Object
Initializes the Liquid templating runtime by loading plugins, applying patches, and registering custom filters.
Class Method Details
.initialize_liquid_runtime ⇒ Object
Initializes the Liquid templating runtime by loading plugins, applying patches, and registering custom filters.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/sourcerer/jekyll.rb', line 17 def self.initialize_liquid_runtime Bootstrapper.load_plugins Monkeypatches.patch_jekyll # Registration order matters: Liquid's Strainer `include`s each module in # turn, so a later registration wins over an earlier one for any # same-named filter method. Sourcerer's filters register LAST so that, # e.g., its `inspect` (which adds a `format` argument) overrides # Jekyll's `inspect` rather than being shadowed by it. # Ensure Jekyll filters are registered ::Liquid::Template.register_filter(::Jekyll::Filters) # Ensure jekyll-asciidoc filters are registered ::Liquid::Template.register_filter(::Jekyll::AsciiDoc::Filters) # Ensure Sourcerer filters are registered (last, so they can override) ::Liquid::Template.register_filter(::Sourcerer::Jekyll::Liquid::Filters) # Ensure Sourcerer tags are registered ::Liquid::Template.register_tag('embed', ::Sourcerer::Jekyll::Liquid::Tags::EmbedTag) end |