module NokogiriTruncator::NodeWithChildren
Public Instance Methods
truncate(max_length, ellipsis)
click to toggle source
# File lib/middleman-blog/truncate_html.rb, line 32 def truncate(max_length, ellipsis) return self if inner_text.length <= max_length truncated_node = dup truncated_node.children.remove children.each do |node| remaining_length = max_length - truncated_node.inner_text.length break if remaining_length <= 0 truncated_node.add_child node.truncate(remaining_length, ellipsis) end truncated_node end