The following script converts text paragraphs to an html Web page via interactive user queries about the attributes of the Web page format. #!/usr/bin/perl -w $USAGE = "Usage: webbuild.pl outputfile inputfile"; # Author: Laura LeMay # Date: March 1999 # Updated by R. Katz Jan 2000 to provide concurrent file (an argument) output # # webbuild: simple text-file conversion to HTML # *very* simple. Assumes no funky characters, embedded # links or boldface, etc. Blank spaces == paragraph # breaks. $title = ''; # <TITLE> $bgcolor = ''; # BGCOLOR $text = ''; # TEXT $head = ''; # main heading @text = (); # body text; $mail = ''; # email address $out = shift; open (FILE, ">$out") || die "Couldn't create $out: $! "; print "Enter the title to use for your web page: "; chomp($title = <STDIN>); foreach $color ('background', 'text') { # run twice, once for each color $in = ''; # temporary input while () { print "Enter the $color color (? for options): "; chomp($in = <STDIN>); $in = lc $in; if ($in eq '?') { # print help print "One of: \nwhite, black, red, green, blue,\n"; print "orange, purple, yellow, aqua, gray,\n"; print "silver, fuchsia, lime, maroon, navy,\n"; print "olive, or Return for none\n"; next; } elsif ($in eq '' or $in eq 'white' or $in eq 'black' or $in eq 'red' or $in eq 'blue' or $in eq 'green' or $in eq 'orange' or $in eq 'purple' or $in eq 'yellow' or $in eq 'aqua' or $in eq 'gray' or $in eq 'silver' or $in eq 'fuchsia' or $in eq 'lime' or $in eq 'maroon' or $in eq 'navy' or $in eq 'olive') { last; } else { print "that's not a color.\n"; } } if ($color eq 'background') { $bgcolor = $in; } else { $text = $in; } } print "Enter a heading: "; chomp($head = <STDIN>); print "Enter your email address: "; chomp($mail = <STDIN>); print '*' x 30; print "\n<HTML>\n<HEAD>\n<TITLE>$title</TITLE>\n"; print FILE "\n<HTML>\n<HEAD>\n<TITLE>$title</TITLE>\n"; print "</HEAD>\n<BODY"; print FILE "</HEAD>\n<BODY"; if ($bgcolor ne '') { print qq( BGCOLOR="$bgcolor"); print FILE qq( BGCOLOR="$bgcolor"); } if ($text ne '') { print qq( TEXT="$text"); print FILE qq( TEXT="$text"); } print ">\n"; print FILE ">\n"; print "<H1>$head</H1>\n<P>"; print FILE "<H1>$head</H1>\n<P>"; while (<>) { if ($_ eq "\n") { print "<P>\n"; print FILE "<P>\n" } else { print $_; print FILE $_; } } print qq(<HR>\n<ADDRESS><A HREF="mailto:$mail">$mail</A></ADDRESS>\n); print FILE qq(<HR>\n<ADDRESS><A HREF="mailto:$mail">$mail</A></ADDRESS>\n); print "</BODY>\n</HTML>\n"; print FILE "</BODY>\n</HTML>\n"; close (FILE) # END OF webbuild.pl