History

Update Sass documentation (3.5.1)

Thibaut Courouble committed 9 years ago

Commit 3e0193c1 parent f89c9ae4 files · +43 −29Browse files

Unified · Split

4 files
  1. assets/stylesheets/pages/_yard.scss +1 −12
  2. lib/docs/filters/sass/clean_html.rb +13 −1
  3. lib/docs/filters/sass/entries.rb +24 −15
  4. lib/docs/scrapers/sass.rb +5 −1
assets/stylesheets/pages/_yard.scss+1−12
@@ -1,16 +1,5 @@
1._yard {1._yard {
2 > h2 { @extend %block-heading; }2 @extend %simple;
3 .signature { @extend %block-label, %label-blue; }
4
5 > .method_details {
6 padding-left: 1rem;
7
8 > .signature { margin-left: -1rem; }
9 > .signature .overload { display: block; }
10
11 h3 { font-size: inherit; }
12 ul, pre { margin: 1em 0; }
13 }
14 3
15 .tag_title { font-weight: $boldFontWeight; }4 .tag_title { font-weight: $boldFontWeight; }
16}5}
lib/docs/filters/sass/clean_html.rb+13−1
@@ -6,13 +6,17 @@ module Docs · 5 unmodified lines
6 node.name = 'code'6 node.name = 'code'
7 end7 end
8 8
9 css('pre').each do |node|
10 node.content = node.content
11 end
12
9 root_page? ? root : other13 root_page? ? root : other
10 14
11 doc15 doc
12 end16 end
13 17
14 def root18 def root
15 at_css('.maruku_toc').remove19 at_css('h1 + ul').remove
16 end20 end
17 21
18 def other22 def other
@@ -46,6 +50,14 @@ module Docs · 27 unmodified lines
46 css('.type > code').each do |node|50 css('.type > code').each do |node|
47 node.before(node.content.remove('Sass::Script::Value::').remove('Sass::Script::')).remove51 node.before(node.content.remove('Sass::Script::Value::').remove('Sass::Script::')).remove
48 end52 end
53
54 css('li > span.signature').each do |node|
55 node.name = 'p'
56 end
57
58 css('h3 strong', 'span.overload').each do |node|
59 node.before(node.children).remove
60 end
49 end61 end
50 end62 end
51 end63 end
lib/docs/filters/sass/entries.rb+24−15
@@ -15,8 +15,12 @@ module Docs · 14 unmodified lines
15 'The !optional Flag' => '!optional'15 'The !optional Flag' => '!optional'
16 }16 }
17 17
18 def include_default_entry?18 def get_name
19 false19 'Functions'
20 end
21
22 def get_type
23 'Functions'
20 end24 end
21 25
22 def additional_entries26 def additional_entries
@@ -27,9 +31,11 @@ module Docs · 4 unmodified lines
27 entries = []31 entries = []
28 type = ''32 type = ''
29 33
30 css('> [id]').each do |node|34 css('*').each do |node|
31 if node.name == 'h2'35 if node.name == 'h2'
32 type = node.content.strip36 type = node.content.strip
37 type.remove! %r{\s#.*}
38 node['id'] = type.parameterize
33 39
34 if type == 'Function Directives'40 if type == 'Function Directives'
35 entries << ['@function', node['id'], '@-Rules and Directives']41 entries << ['@function', node['id'], '@-Rules and Directives']
@@ -42,23 +48,26 @@ module Docs · 6 unmodified lines
42 end48 end
43 49
44 next50 next
45 end51 elsif node.name == 'h3' || node.name == 'h4'
52 next unless TYPES.include?(type)
46 53
47 next unless TYPES.include?(type)54 name = node.content.strip
55 name.remove! %r{\A.+?: }
56 name.remove! %r{\s#.*}
48 57
49 name = node.content.strip58 node['id'] = name.parameterize
50 name.remove! %r{\A.+?: }
51 59
52 next if SKIP_NAMES.include?(name)60 next if SKIP_NAMES.include?(name)
53 61
54 name = REPLACE_NAMES[name] if REPLACE_NAMES[name]62 name = REPLACE_NAMES[name] if REPLACE_NAMES[name]
55 name.gsub!(/ [A-Z]/) { |str| str.downcase! }63 name.gsub!(/ [A-Z]/) { |str| str.downcase! }
56 64
57 if type == '@-Rules and Directives'65 if type == '@-Rules and Directives'
58 next unless name =~ /\A@[\w\-]+\z/ || name == '!optional'66 next unless name =~ /\A@[\w\-]+\z/ || name == '!optional'
59 end67 end
60 68
61 entries << [name, node['id'], type]69 entries << [name, node['id'], type]
70 end
62 end71 end
63 72
64 entries73 entries
@@ -66,7 +75,7 @@ module Docs · 1 unmodified line
66 75
67 def function_entries76 def function_entries
68 css('.method_details > .signature').inject [] do |entries, node|77 css('.method_details > .signature').inject [] do |entries, node|
69 name = node.at_css('strong').content.strip78 name = node.content.strip.remove(%r{\(.*})
70 79
71 unless name == entries.last.try(:first)80 unless name == entries.last.try(:first)
72 entries << [name, node['id'], 'Functions']81 entries << [name, node['id'], 'Functions']
lib/docs/scrapers/sass.rb+5−1
@@ -1,9 +1,13 @@
1module Docs1module Docs
2 class Sass < UrlScraper2 class Sass < UrlScraper
3 self.type = 'yard'3 self.type = 'yard'
4 self.release = '3.4.22'4 self.release = '3.5.1'
5 self.base_url = 'http://sass-lang.com/documentation/'5 self.base_url = 'http://sass-lang.com/documentation/'
6 self.root_path = 'file.SASS_REFERENCE.html'6 self.root_path = 'file.SASS_REFERENCE.html'
7 self.links = {
8 home: 'http://sass-lang.com/',
9 code: 'https://github.com/sass/sass'
10 }
7 11
8 html_filters.push 'sass/clean_html', 'sass/entries', 'title'12 html_filters.push 'sass/clean_html', 'sass/entries', 'title'
9 13