module Docs
class Tcllib < UrlScraper
self.name = 'Tcllib'
self.type = 'simple'
self.slug = 'tcllib'
self.release = '2.0'
self.base_url = 'https://core.tcl-lang.org/tcllib/doc/trunk/embedded/md/'
self.root_path = 'toc0.md'
self.links = {
home: 'https://core.tcl-lang.org/tcllib/doc/trunk/embedded/index.md',
code: 'https://sourceforge.net/projects/tcllib/files/tcllib/'
}
html_filters.push 'tcllib/entries', 'tcllib/clean_html', 'title'
# The docs have incorrect elements, so we should just skip that
html_filters.replace('apply_base_url', 'tcllib/nop')
options[:root_title] = 'Tcllib Documentation'
options[:container] = '.content'
options[:skip] = [
# Full of broken links, path improperly duplicates "tcllib" segment
'tcllib/toc.md',
# The other ones aren't terribly useful
'toc.md', 'toc1.md', 'toc2.md',
# Keyword index
'index.md'
]
options[:attribution] = <<-HTML
Licensed under the BSD license
HTML
def get_latest_version(opts)
doc = fetch_doc('https://core.tcl-lang.org/tcllib/doc/trunk/embedded/index.md', opts)
doc.at_css('strong').content.scan(/([0-9.]+)/)[0][0]
end
end
end