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 @@
11 ._yard {
2− > h2 { @extend %block-heading; }
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− }
2+ @extend %simple;
143
154 .tag_title { font-weight: $boldFontWeight; }
165 }
lib/docs/filters/sass/clean_html.rb+13−1
@@ -6,13 +6,17 @@ module Docs · 5 unmodified lines
66 node.name = 'code'
77 end
88
9+ css('pre').each do |node|
10+ node.content = node.content
11+ end
12+
913 root_page? ? root : other
1014
1115 doc
1216 end
1317
1418 def root
15− at_css('.maruku_toc').remove
19+ at_css('h1 + ul').remove
1620 end
1721
1822 def other
@@ -46,6 +50,14 @@ module Docs · 27 unmodified lines
4650 css('.type > code').each do |node|
4751 node.before(node.content.remove('Sass::Script::Value::').remove('Sass::Script::')).remove
4852 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
4961 end
5062 end
5163 end
lib/docs/filters/sass/entries.rb+24−15
@@ -15,8 +15,12 @@ module Docs · 14 unmodified lines
1515 'The !optional Flag' => '!optional'
1616 }
1717
18− def include_default_entry?
19− false
18+ def get_name
19+ 'Functions'
20+ end
21+
22+ def get_type
23+ 'Functions'
2024 end
2125
2226 def additional_entries
@@ -27,9 +31,11 @@ module Docs · 4 unmodified lines
2731 entries = []
2832 type = ''
2933
30− css('> [id]').each do |node|
34+ css('*').each do |node|
3135 if node.name == 'h2'
3236 type = node.content.strip
37+ type.remove! %r{\s#.*}
38+ node['id'] = type.parameterize
3339
3440 if type == 'Function Directives'
3541 entries << ['@function', node['id'], '@-Rules and Directives']
@@ -42,23 +48,26 @@ module Docs · 6 unmodified lines
4248 end
4349
4450 next
45− end
51+ elsif node.name == 'h3' || node.name == 'h4'
52+ next unless TYPES.include?(type)
4653
47− next unless TYPES.include?(type)
54+ name = node.content.strip
55+ name.remove! %r{\A.+?: }
56+ name.remove! %r{\s#.*}
4857
49− name = node.content.strip
50− name.remove! %r{\A.+?: }
58+ node['id'] = name.parameterize
5159
52− next if SKIP_NAMES.include?(name)
60+ next if SKIP_NAMES.include?(name)
5361
54− name = REPLACE_NAMES[name] if REPLACE_NAMES[name]
55− name.gsub!(/ [A-Z]/) { |str| str.downcase! }
62+ name = REPLACE_NAMES[name] if REPLACE_NAMES[name]
63+ name.gsub!(/ [A-Z]/) { |str| str.downcase! }
5664
57− if type == '@-Rules and Directives'
58− next unless name =~ /\A@[\w\-]+\z/ || name == '!optional'
59− end
65+ if type == '@-Rules and Directives'
66+ next unless name =~ /\A@[\w\-]+\z/ || name == '!optional'
67+ end
6068
61− entries << [name, node['id'], type]
69+ entries << [name, node['id'], type]
70+ end
6271 end
6372
6473 entries
@@ -66,7 +75,7 @@ module Docs · 1 unmodified line
6675
6776 def function_entries
6877 css('.method_details > .signature').inject [] do |entries, node|
69− name = node.at_css('strong').content.strip
78+ name = node.content.strip.remove(%r{\(.*})
7079
7180 unless name == entries.last.try(:first)
7281 entries << [name, node['id'], 'Functions']
lib/docs/scrapers/sass.rb+5−1
@@ -1,9 +1,13 @@
11 module Docs
22 class Sass < UrlScraper
33 self.type = 'yard'
4− self.release = '3.4.22'
4+ self.release = '3.5.1'
55 self.base_url = 'http://sass-lang.com/documentation/'
66 self.root_path = 'file.SASS_REFERENCE.html'
7+ self.links = {
8+ home: 'http://sass-lang.com/',
9+ code: 'https://github.com/sass/sass'
10+ }
711
812 html_filters.push 'sass/clean_html', 'sass/entries', 'title'
913