#!/usr/bin/ruby -Ke
require 'cgi'
require 'htmltemplate'
#CGIクラスの作成
cgi = CGI.new()
#link.htmlをテンプレートとして読み込む
html = HTMLTemplate.open( "link.html" )
#(ここにタイトルが入ります) をタイトルで置換
html.gsub!("(ここにタイトルが入ります)", "HTMLTemplateを用いたCGIのリンク集" )
#ファイルを読み込む
File.open( "link.txt" ) do |file|
# と をブロックとして置換
html.block( "link" ) do |block|
#各行を読み込んで、加工した配列を連結する
file.collect do |line|
#第一列は名前、第二列はURL
name, url = line.chomp.split(/\t/)
#この行用のテンプレートをコピーして
tmpl = block.dup
#各変数に置換
tmpl.gsub!( "(ここにサイト名が入ります)", name )
tmpl.gsub!( "(ここにURLが入ります)", url )
end.join( "" )
end
end
cgi.out do
#ブロック指定により生成される可能性のある空行を削除して出力
html.to_s.gsub( /\n[\t\s]*\n/, "\n" )
end