From 5eab92ae1f8d2eaedd3e9e812d87f5794ce2222a Mon Sep 17 00:00:00 2001 From: Thibaut Date: Tue, 29 Dec 2015 10:05:39 +0100 Subject: [PATCH] Fix python filter removing valid content Fixes #320. --- lib/docs/filters/python/clean_html.rb | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/docs/filters/python/clean_html.rb b/lib/docs/filters/python/clean_html.rb index 408dfd8e..2d018a5e 100644 --- a/lib/docs/filters/python/clean_html.rb +++ b/lib/docs/filters/python/clean_html.rb @@ -2,7 +2,11 @@ module Docs class Python class CleanHtmlFilter < Filter def call - @doc = at_css '.body > .section' + @doc = at_css '.body' + + css('> .section').each do |node| + node.before(node.children).remove + end # Clean inline code elements @@ -30,8 +34,12 @@ module Docs # Clean headings - at_css('h1').tap do |node| - node.content = node.content.sub!(/\A[\d\.]+/) { |str| @levelRegexp = /\A#{str}/; '' } + css('h1').each do |node| + node.content = node.content.sub!(/\A[\d\.]+/) do |str| + rgx = /\A#{str}/ + @levelRegexp = @levelRegexp ? Regexp.union(@levelRegexp, rgx) : rgx + '' + end end css('h2', 'h3', 'h4').each do |node|