diff --git a/lib/docs/filters/nim/entries.rb b/lib/docs/filters/nim/entries.rb
index 7461ab5f..1ec4609a 100644
--- a/lib/docs/filters/nim/entries.rb
+++ b/lib/docs/filters/nim/entries.rb
@@ -16,8 +16,10 @@ module Docs
name.remove! ' User Guide'
name.remove! ' User\'s manual'
name.remove! %r{ \-.*}
+ name.remove! %r{\Asrc/}
+ name.remove! %r{\Astd/}
name.strip!
- name
+ name.split("/").last
end
def get_type
@@ -54,10 +56,11 @@ module Docs
else
css('.simple-toc-section a, .nested-toc-section a').each do |node|
- entry_name = node.content
- entry_name.gsub!(/,.*/, '')
+ match = /^`(.*)`|^(\w+)/.match(node.content)
+ entry_name = match[1] || match[2]
+
entry_id = slug + node['href']
- entries << [entry_name, entry_id, name]
+ entries << ["#{entry_name} (#{name})", entry_id, name]
end
end
diff --git a/lib/docs/scrapers/nim.rb b/lib/docs/scrapers/nim.rb
index 5a9d4f00..9001dbee 100644
--- a/lib/docs/scrapers/nim.rb
+++ b/lib/docs/scrapers/nim.rb
@@ -1,7 +1,6 @@
module Docs
class Nim < UrlScraper
self.type = 'simple'
- self.release = '1.4.8'
self.base_url = 'https://nim-lang.org/docs/'
self.root_path = 'overview.html'
self.links = {
@@ -14,10 +13,18 @@ module Docs
options[:skip] = %w(theindex.html docgen.html tut1.html tut2.html tut3.html tools.html)
options[:attribution] = <<-HTML
- © 2006–2021 Andreas Rumpf
+ © 2006–2024 Andreas Rumpf
Licensed under the MIT License.
HTML
+ version do
+ self.release = '2.0.2'
+ end
+
+ version '1' do
+ self.release = '1.4.8'
+ end
+
def get_latest_version(opts)
doc = fetch_doc('https://nim-lang.org/docs/overview.html', opts)
doc.at_css('.container > .docinfo > tbody > tr:last-child > td').content.strip