Selaa lähdekoodia

Update GCC documentation (7.1.0)

Thibaut Courouble 8 vuotta sitten
vanhempi
commit
ecd0c342eb
2 muutettua tiedostoa jossa 45 lisäystä ja 6 poistoa
  1. 23 2
      lib/docs/filters/gnu/clean_html.rb
  2. 22 4
      lib/docs/scrapers/gnu/gcc.rb

+ 23 - 2
lib/docs/filters/gnu/clean_html.rb

@@ -11,9 +11,10 @@ module Docs
 
         css('.node > a[name]').each do |node|
           node.parent.next_element['id'] = node['name']
+          node.remove
         end
 
-        css('a[name]').each do |node|
+        css('a[name]:not(:empty)').each do |node|
           node['id'] = node['name']
         end
 
@@ -26,12 +27,32 @@ module Docs
           node.inner_html = node.inner_html.strip_heredoc.strip
         end
 
-        css('dt > em', 'acronym', 'dfn', 'cite', 'h1 code').each do |node|
+        css('dt > em', 'acronym', 'dfn', 'cite', 'h1 code', 'th > pre').each do |node|
           node.before(node.children).remove
         end
 
+        css('.footnote h1').each do |node|
+          node.name = 'div'
+        end
+
+        css('div.header').each do |node|
+          node.name = 'p'
+        end
+
+        css('th[valign]', 'td[valign]').remove_attr('valign')
+        css('th[align]', 'td[align]').remove_attr('valign')
+
         css('.node', 'br', 'hr').remove
 
+        css('a[name]:empty').each do |node|
+          (node.next_element || node.parent)['id'] = node['name']
+          node.remove
+        end
+
+        css('.header + h1').each do |node|
+          node.previous_element.remove
+        end
+
         doc
       end
     end

+ 22 - 4
lib/docs/scrapers/gnu/gcc.rb

@@ -8,7 +8,7 @@ module Docs
 
     html_filters.push 'title'
 
-    options[:root_title] = 'Using the GNU Compiler Collection (GCC)'
+    options[:root_title] = false
     options[:title] = false
 
     options[:replace_paths] = {
@@ -46,10 +46,26 @@ module Docs
       'Wtrigraphs.html' => 'Invocation.html'
     }
 
+    version '7' do
+      self.release = '7.1.0'
+      self.dir = '/Users/Thibaut/DevDocs/Docs/gcc7'
+      self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/gcc/"
+    end
+
+    version '7 CPP' do
+      self.release = '7.1.0'
+      self.dir = '/Users/Thibaut/DevDocs/Docs/gcpp7'
+      self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/cpp/"
+
+      options[:replace_paths] = CPP_PATHS
+    end
+
     version '6' do
       self.release = '6.3.0'
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcc6'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/gcc/"
+
+      options[:root_title] = 'Using the GNU Compiler Collection (GCC)'
     end
 
     version '6 CPP' do
@@ -57,13 +73,15 @@ module Docs
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcpp6'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/cpp/"
 
-      options[:root_title] = false
       options[:replace_paths] = CPP_PATHS
     end
+
     version '5' do
       self.release = '5.4.0'
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcc5'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/gcc/"
+
+      options[:root_title] = 'Using the GNU Compiler Collection (GCC)'
     end
 
     version '5 CPP' do
@@ -71,7 +89,6 @@ module Docs
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcpp5'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/cpp/"
 
-      options[:root_title] = false
       options[:replace_paths] = CPP_PATHS
     end
 
@@ -79,6 +96,8 @@ module Docs
       self.release = '4.9.3'
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcc4'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/gcc/"
+
+      options[:root_title] = 'Using the GNU Compiler Collection (GCC)'
     end
 
     version '4 CPP' do
@@ -86,7 +105,6 @@ module Docs
       self.dir = '/Users/Thibaut/DevDocs/Docs/gcpp4'
       self.base_url = "https://gcc.gnu.org/onlinedocs/gcc-#{release}/cpp/"
 
-      options[:root_title] = false
       options[:replace_paths] = CPP_PATHS
     end
   end