#!/usr/bin/env ruby # # fetch_doc.rb # # Fetch the documentation from the wiki and translate it # to be human readable. # require 'open-uri' BASE_URI = 'http://www.pamusb.org/wiki/doc/' DOC_PATH = './pam_usb/doc/' DOCS = [ 'installation', 'upgrading', 'configuration', 'faq' ] MANS = [ 'pusb_hotplug', 'pusb_conf', 'pusb_check' ] REPLACE_LIST = [ # Remove wiki links [[link|name]] { :pattern => /\[\[.+\|(.+)\]\]/, :with => '\1' }, # Remove misc xhtml/wiki characters { :pattern => /\/\//, :with => '' }, { :pattern => /\\\\ /, :with => '' }, { :pattern => /\*\*/, :with => '' }, { :pattern => /</, :with => '<' }, { :pattern => />/, :with => '>' }, { :pattern => /"/, :with => '"' }, { :pattern => /.*\n/, :with => '' }, { :pattern => /<\/code>.*\n/, :with => '' }, { :pattern => /(.+)<\/file>/m, :with => '\1' }, # Remove trailing whitespaces { :pattern => /^ /, :with => '' }, # Fit 80 colums { :pattern => /(.{1,80})( +|$\n?)|(.{1,80})/, :with => "\\1\\3\n" }, ] def fetch_raw_doc(name) uri = BASE_URI + name + '?do=edit' body = open(uri) { |f| f.read } body.gsub!(/.*