Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: My April Fools Prank is

by nop (Hermit)
on Mar 31, 2001 at 03:55 UTC ( #68570=note: print w/replies, xml ) Need Help??


in reply to My April Fools Prank is

April Fool's silliness
Below is some code that formats tables -- shades alternate rows -- used in an intranet application internally...
yeah, yeah, yeah, I know the code is ugly, but it works, and I didn't know much perl when I wrote it... so please be gentle on this old code!....
Anyway, on April Fools, I set  $silly to true using  rand about 1 in 10 times.... truly horrible.

nop
sub table { my $html = shift; my $i=1; $html =~ s{<\s*(t\w+)}{ if (lc($1) eq "tr") {$i++; "<tr";} elsif (lc($1) eq "td") { (($i%2) == 1) ? '<td bgcolor="#F4FAFF" align="center"' : '<td bgcolor="#E1f1FF" align="center"';} elsif (lc($1) eq "th") { (($i%2) == 1) ? '<th bgcolor="#F4FAFF" align="center"' : '<th bgcolor="#E1f1FF" align="center"';} else {"<$1"} }iegm; if (!$silly) {return $html;} my $dir; $html =~ s{<td.*?>(.*?)<\/td>}{ $dir = (qw(left right up down))[rand()*4]; if (rand()<.2) { "<td><marquee direction=\"$dir\" behavior=\"alternate\" height +=\"40\" vspace=\"2\">$1</marquee></td>"; } else { "<td>$1</td>"; } }ieg; return $html; }

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://68570]
help
Chatterbox?
[Dumu]: got it. Anyway. Perl question. Can you use binmode more than once with an open filehandle to read a file first in binary mode, then in utf8 mode?
[ambrus]: Dumu: you can use binmode multiple times, but mostly at the start before you read things. it would be strange to change the io layers after you've already read things, and might not work too well.
[ambrus]: Dumu: why would you want to read the same file both in binary mode and utf8 mode?
[Corion]: Dumu: Yes, but switching needs to be done with caution, as you might read half an UTF-8 character in binary mode, and then switch to utf8 mode...
[Corion]: Personally, I would do the decoding of data in the program and not in the filehandle
[Corion]: ambrus: Maybe a record-based file where some data is strings encoded as utf8
[Corion]: But again, I would read all data as binary and then decode from utf8
[ambrus]: Corion: that wouldn't be my guess, but I'll wait for Dumu
[Corion]: Meh. I'm now on Firefox 57 ("Quantum") and again have to remove Pocket, and reinstall the adblocker, uMatrix (because NoScript doesn't work) and silence the about:blank page to not download crap from the internet

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (11)
As of 2017-11-20 17:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:













    Results (290 votes). Check out past polls.

    Notices?