#!/usr/bin/ruby # -*- encoding: utf-8 -*- require 'erb' contentsdir = 'contents.d/' tmpdir = 'tmp/' class Layout require 'bin/render_rss.rb' include RenderRss extend ERB::DefMethod tmpldir = 'template/' def_erb_method('layout', File.join(tmpldir, 'layout.html.erb')) def_erb_method('layout_top', File.join(tmpldir, 'layout-top.html.erb')) end Dir::glob(File.join(contentsdir, "*.html")) do |filename| template = ERB.new(IO.read(filename),nil,'<>') filebasename = File.basename(filename) newfile = open(File.join(tmpdir, filebasename), "w") header_title_base = 'Vine Linux' if filebasename == "index.html" newfile.puts Layout.new.layout_top { template.result } else title=File.read(filename).grep(/h1 class=\"title/) if title[0] $header_title = header_title_base+' - '+title[0].gsub(/.*>(.*)<.*/,"\\1").chomp else $header_title = header_title_base end newfile.puts Layout.new.layout { template.result } end newfile.close end