2007-02-03 15:03:05 +00:00
|
|
|
global header, mode;
|
|
|
|
|
2007-02-03 11:54:02 +00:00
|
|
|
BEGIN {
|
|
|
|
header = 1;
|
2007-02-03 15:03:05 +00:00
|
|
|
mode = 0;
|
2007-02-04 04:40:33 +00:00
|
|
|
|
|
|
|
output=ARGV[0];
|
|
|
|
gsub (/\.man/, ".html", output);
|
|
|
|
|
|
|
|
print "OUTPUT TO: " output;
|
|
|
|
|
|
|
|
print "</html>";
|
|
|
|
print "</head>";
|
2007-02-03 11:54:02 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
header && /^\.[[:alpha:]]+[[:space:]]/ {
|
|
|
|
if ($1 == ".title")
|
|
|
|
{
|
2007-02-04 04:40:33 +00:00
|
|
|
print "<title>" $2 "</title>";
|
2007-02-03 11:54:02 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2007-02-04 04:40:33 +00:00
|
|
|
header && !/^\.[[:alpha:]]+[[:space:]]/ {
|
|
|
|
|
|
|
|
header = 0;
|
|
|
|
print "</head>";
|
|
|
|
print "<body>";
|
|
|
|
}
|
2007-02-03 11:54:02 +00:00
|
|
|
|
|
|
|
!header {
|
2007-02-03 15:03:05 +00:00
|
|
|
local text;
|
|
|
|
|
|
|
|
if (mode == 0)
|
2007-02-03 11:54:02 +00:00
|
|
|
{
|
2007-02-03 15:03:05 +00:00
|
|
|
if (/^== [^=]+ ==$/)
|
|
|
|
{
|
|
|
|
text=substr($0, 3, length($0)-4);
|
|
|
|
print "<h2>" text "</h2>";
|
|
|
|
}
|
|
|
|
else if (/^=== [^=]+ ===$/)
|
|
|
|
{
|
|
|
|
text=substr($0, 4, length($0)-6);
|
|
|
|
print "<h3>" text "</h3>";
|
|
|
|
}
|
|
|
|
else if (/^\{\{\{$/)
|
|
|
|
{
|
|
|
|
print "<pre>";
|
|
|
|
mode = 1;
|
|
|
|
}
|
|
|
|
else if (/^$/)
|
|
|
|
{
|
|
|
|
print "<br>";
|
|
|
|
}
|
2007-02-04 04:40:33 +00:00
|
|
|
else
|
|
|
|
{
|
|
|
|
gsub ("<", "\\<");
|
|
|
|
gsub (">", "\\>");
|
|
|
|
print $0;
|
|
|
|
print "<br>";
|
|
|
|
}
|
2007-02-03 11:54:02 +00:00
|
|
|
}
|
2007-02-03 15:03:05 +00:00
|
|
|
else if (mode == 1)
|
2007-02-03 11:54:02 +00:00
|
|
|
{
|
2007-02-03 15:03:05 +00:00
|
|
|
if (/^}}}$/)
|
|
|
|
{
|
|
|
|
print "</pre>";
|
|
|
|
mode = 0;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
gsub ("<", "\\<");
|
|
|
|
gsub (">", "\\>");
|
|
|
|
print $0;
|
|
|
|
}
|
2007-02-03 11:54:02 +00:00
|
|
|
}
|
|
|
|
}
|
2007-02-04 04:40:33 +00:00
|
|
|
|
|
|
|
END {
|
|
|
|
print "</body>";
|
|
|
|
print "</html>";
|
|
|
|
}
|