From 1dbc03fab45f6fb65bd78d024870560ee5a9fc93 Mon Sep 17 00:00:00 2001 From: japborst Date: Sat, 1 Oct 2016 16:17:24 +0200 Subject: [PATCH] sklearn support --- assets/stylesheets/pages/_sphinx.scss | 10 +++++ lib/docs/filters/scikit_learn/entries.rb | 54 +++++++++++++++++++++++ lib/docs/scrapers/scikit_learn.rb | 36 +++++++++++++++ public/icons/docs/scikit_learn/16.png | Bin 0 -> 270 bytes public/icons/docs/scikit_learn/16@2x.png | Bin 0 -> 636 bytes public/icons/docs/scikit_learn/SOURCE | 1 + 6 files changed, 101 insertions(+) create mode 100644 lib/docs/filters/scikit_learn/entries.rb create mode 100644 lib/docs/scrapers/scikit_learn.rb create mode 100644 public/icons/docs/scikit_learn/16.png create mode 100644 public/icons/docs/scikit_learn/16@2x.png create mode 100644 public/icons/docs/scikit_learn/SOURCE diff --git a/assets/stylesheets/pages/_sphinx.scss b/assets/stylesheets/pages/_sphinx.scss index a5984709..4572206c 100644 --- a/assets/stylesheets/pages/_sphinx.scss +++ b/assets/stylesheets/pages/_sphinx.scss @@ -37,6 +37,16 @@ .admonition-title + dl { padding-top: .5em; } td > div { margin: 0 !important; } + + .row-fluid { + h2 { + background: none; + border: none; + > a { + float: none; + } + } + } } ._sphinx { diff --git a/lib/docs/filters/scikit_learn/entries.rb b/lib/docs/filters/scikit_learn/entries.rb new file mode 100644 index 00000000..e203b378 --- /dev/null +++ b/lib/docs/filters/scikit_learn/entries.rb @@ -0,0 +1,54 @@ +module Docs + class ScikitLearn + class EntriesFilter < Docs::EntriesFilter + def get_name + # Classes, functions and methods + if subpath.start_with?('modules/generated') + name = at_css('dt').content.strip + name.sub! %r{\(.*}, '()' # Remove function arguments + name.remove! %r{[\=\[].*} # Remove [source] anchor + # name.remove! %r{\s=.*} # Remove the occasional '=' in class names + name.remove! %r{\A(class(method)?) (sklearn\.)?} + else + # User guide + name = at_css('h1').content.strip + end + + name.remove! "\u{00B6}" + name + end + + def get_type + # Classes, functions and methods + if subpath.start_with?('modules/generated') + type = at_css('dt > .descclassname').content.strip + type.remove! 'sklearn.' + type.remove! '.' + type + else + 'Guide' + end + end + + def additional_entries + entries = [] + + css('.class > dt[id]', '.exception > dt[id]', '.attribute > dt[id]').each do |node| + entries << [node['id'].remove('sklearn.'), node['id']] + end + + css('.data > dt[id]').each do |node| + if node['id'].split('.').last.upcase! # skip constants + entries << [node['id'].remove('sklearn.'), node['id']] + end + end + + css('.function > dt[id]', '.method > dt[id]', '.classmethod > dt[id]').each do |node| + entries << [node['id'].remove('sklearn.') + '()', node['id']] + end + + entries + end + end + end +end diff --git a/lib/docs/scrapers/scikit_learn.rb b/lib/docs/scrapers/scikit_learn.rb new file mode 100644 index 00000000..aa95ba17 --- /dev/null +++ b/lib/docs/scrapers/scikit_learn.rb @@ -0,0 +1,36 @@ +module Docs + class ScikitLearn < UrlScraper + self.name = 'scikit-learn' + self.slug = 'scikit_learn' + self.type = 'sphinx' + self.release = '0.17.1' + self.base_url = "http://scikit-learn.org/0.17/" + self.root_path = 'documentation.html' + self.initial_paths = %w( + user_guide.html + supervised_learning.html + unsupervised_learning.html + model_selection.html + data_transforms.html) + + self.links = { + home: 'http://scikit-learn.org/', + code: 'https://github.com/scikit-learn/scikit-learn' + } + + html_filters.push 'scikit_learn/entries', 'sphinx/clean_html' + + options[:container] = '.body' + + options[:root_title] = self.name + + options[:only] = self.initial_paths + options[:only_patterns] = [/\Amodules/, /\Adatasets/] + + options[:attribution] = <<-HTML + © 2007–2016 The scikit-learn deveopers
+ Licensed under the 3-clause BSD License. + HTML + + end +end diff --git a/public/icons/docs/scikit_learn/16.png b/public/icons/docs/scikit_learn/16.png new file mode 100644 index 0000000000000000000000000000000000000000..e96f973d877224ff4e34f6d8ea5fb3d5c104d1a3 GIT binary patch literal 270 zcmV+p0rCEcP)QdHCV~w_ks-8}Q&DPR(EgjAx$t55jiy&i$W!^2z_N z=ms6>B+dXB4qkcX|C5hD5C*JIAk6>}_Fj7F|EC|nAqL>_KTZQcc;bo25CdkJk!OJ0 zqKp6kQDOiHKm7y@i~08C8*uK~=l}m#1d?yS>8GE7Ij@9#18%?l`v3o>rFabh09Vc` UJ#5Zc7XSbN07*qoM6N<$f*!1b00000 literal 0 HcmV?d00001 diff --git a/public/icons/docs/scikit_learn/16@2x.png b/public/icons/docs/scikit_learn/16@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..32ff0ffbca060d974a41a9c15392ac64b8cfddc8 GIT binary patch literal 636 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10;#h!Bi0gkK`17*l zjsHJ9^nZcl|NsB~pPBi8rpf<*fBzqB{=cvG|H;Y!Z*Bd*r}F=soBwy0{r~p%|7`RB z7nk@gzZ|skO6jh<3(h~k{r21cO{vB+&m?ZRzVpu8e?Vh@eoo$a;}%f-@p1FnXE)w> z^Z)$(DJP%&-&;NP)RX@klT2owIsNq0|E1octFHV7YM5_-;QsrPop&4;TzK&Q`~Srr z+it)8zdT^+rI-KLCrm&6^#6gz$tR!8J@@SY;}a{dy!`+3)Bo8PM<0Fozb&_{|KBX2 zj~J7@-CYwl|N&H^@Oz7ytlLzE>)f_ zx$015_JY|!A}WEUp-0^%m?g#Sh`^cBgushFCnkkStjTOXIIT?L&C7;^7c1G-EiOtn zbI0Zj-0772|A14cS-JP{4N)ba^Hob+BT7;dOH!?pi&B9UgOP!unXaLMu7P2Qp@Ef= sv6ZQ*u7Qb_fx$Wh$)zY7a`RI%(<*UmxSzXF5~zW})78&qol`;+0Kgt7?f?J) literal 0 HcmV?d00001 diff --git a/public/icons/docs/scikit_learn/SOURCE b/public/icons/docs/scikit_learn/SOURCE new file mode 100644 index 00000000..381f198a --- /dev/null +++ b/public/icons/docs/scikit_learn/SOURCE @@ -0,0 +1 @@ +http://scikit-learn.org/stable/_static/favicon.ico \ No newline at end of file