diff --git a/lib/chili_project/liquid/liquid_ext.rb b/lib/chili_project/liquid/liquid_ext.rb index b35798a9..d001afe4 100644 --- a/lib/chili_project/liquid/liquid_ext.rb +++ b/lib/chili_project/liquid/liquid_ext.rb @@ -1,6 +1,7 @@ module ChiliProject module Liquid module LiquidExt + ::Liquid::Block.send(:include, Block) ::Liquid::Context.send(:include, Context) end end diff --git a/lib/chili_project/liquid/liquid_ext/block.rb b/lib/chili_project/liquid/liquid_ext/block.rb new file mode 100644 index 00000000..f37dffc4 --- /dev/null +++ b/lib/chili_project/liquid/liquid_ext/block.rb @@ -0,0 +1,22 @@ +module ChiliProject + module Liquid + module LiquidExt + module Block + def self.included(base) + base.send(:include, InstanceMethods) + base.class_eval do + alias_method_chain :render_all, :cleaned_whitespace + end + end + + module InstanceMethods + def render_all_with_cleaned_whitespace(list, context) + # Remove the leading newline in a block's content + list[0].sub!(/\A\r?\n/, "") if list[0].is_a?(String) + render_all_without_cleaned_whitespace(list, context) + end + end + end + end + end +end \ No newline at end of file