in reply to text2html
Line 22 uses <stdin> while all other lines use <STDIN> you should be consistent and use <STDIN> everywhere. You could have made a hash or array of colors to make the checking and printing of the colors easier and more expandable in the future (adding a new color would be done in just one place rather than two). The program isn't very useful as you can neither redirect the output to a file (because there is non-html being written to stdout) nor redirect the input from another file (because the user needs to answer a few questions before it's time to read the file). The first problem can be solved by writing your questions to STDERR and the generated html to STDOUT which will allow someone to yourprogram > file.html and still see the questions on their screen. The second problem can be solved by allowing someone to specify a filename to read from on the commandline such as yourprogram -f textfile > file.html or a simpler version of yourprogram textfile > file.html