I just ran into this the other day. It is easy to forget the different ways that the << operator can be used. Basically Perl looks at the way you quote your termination string (HERE, EOF, etc.). If you don't quote it, Perl will assume double-quotes. Put single quotes around your termination string to avoid accidental interpolation in your strings(E.g. <<'HERE' instead of <<HERE).
>From perldoc perlop: print <<EOF; The price is $Price. EOF print << "EOF"; # same as above The price is $Price. EOF print << `EOC`; # execute commands echo hi there echo lo there EOC print <<"foo", <<"bar"; # you can stack them I said foo. foo I said bar. bar -----Original Message----- From: Gerald Wheeler [mailto:[EMAIL PROTECTED] Sent: Friday, January 13, 2006 8:28 AM To: beginners@perl.org Subject: The "@" symbol trying to include the following code with the abc.pl script... the snippet works in an html/css environment print <<EOF; <style type="text/css" media="all"> @import url("theta.css"); @media print { body {background: white; color: black; font: 12pt Times, serif;} #noprnt {display: none !important;} } </style> EOF The "@" symbols are misread and thus this cause errors... escaping the "@" symbols doesn't work -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>