History

Simplify the HTML output

Nicolas Ettlin committed 4 years ago

Commit 4d024101 parent 94763461 file · +29 −7Browse files

Unified · Split

lib/docs/filters/scala/clean_html_v3.rb+29−7
@@ -11,13 +11,7 @@ module Docs · 10 unmodified lines
1111 format_top_links
1212 format_metadata
1313 format_members
14−
15− # Simplify the HTML structure
16− @doc = at_css('#content > div')
17− css('.documentableList > *').each do |element|
18− element.parent = doc
19− end
20− at_css('.membersList').remove
14+ simplify_html
2115
2216 doc
2317 end
@@ -91,6 +85,10 @@ module Docs · 67 unmodified lines
9185 def format_metadata
9286 # Metadata (attributes)
9387 css('.tabs.single .monospace').each do |node|
88+ node.css('> div').each do |div|
89+ div['class'] = 'member'
90+ end
91+
9492 node['class'] = 'related-types'
9593
9694 if node.children.count > 15
@@ -183,6 +181,30 @@ module Docs · 86 unmodified lines
183181 end
184182 end
185183
184+ def simplify_html
185+ @doc = at_css('#content > div')
186+
187+ css('.documentableList > *').each do |element|
188+ element.parent = doc
189+ end
190+ at_css('.membersList').remove
191+
192+ # Remove useless classes
193+ css('.header, .groupHeader, .cover, .documentableName').each do |element|
194+ element.remove_attribute('class')
195+ end
196+
197+ # Remove useless attributes
198+ css('[t]').each do |element|
199+ element.remove_attribute('t')
200+ end
201+
202+ # Remove useless wrapper elements
203+ css('.docs, .doc, .memberDocumentation, span, div:not([class])').each do |element|
204+ element.replace(element.children)
205+ end
206+ end
207+
186208 def convert_dl_to_table(dl)
187209 table = Nokogiri::XML::Node.new('table', doc)
188210 table['class'] = 'attributes'