summaryrefslogtreecommitdiff
path: root/LOLCAT
diff options
context:
space:
mode:
authorJoey Hess <joey@kitenet.net>2014-09-09 10:04:02 -0400
committerJoey Hess <joey@kitenet.net>2014-09-09 10:04:02 -0400
commit89c1b3d2e82c695eb0f16c22671f048c040a09ed (patch)
treeda6385cd4433aaac3a38c172d73a9c248057c670 /LOLCAT
parent04aa537a1860f92b6f708c8a1e2427faa5236261 (diff)
Rename lolcat to LOLCAT to avoid collision with a fine rainbow colored cat. Closes: #760910
Diffstat (limited to 'LOLCAT')
-rwxr-xr-xLOLCAT86
1 files changed, 86 insertions, 0 deletions
diff --git a/LOLCAT b/LOLCAT
new file mode 100755
index 0000000..22c4a58
--- /dev/null
+++ b/LOLCAT
@@ -0,0 +1,86 @@
+#!/usr/bin/perl -p
+# lolcatz filtur
+# Copyright 2013 by Joey Hess under the terms of the GNU GPL.
+
+# an array, not a hash. because order is important
+@trans_table=(
+ 'can i' => 'i can',
+ '\bi\'ve' => 'i',
+ '\ba\s+' => '', # nuke 'a'
+ 'cheese' => 'cheez',
+ '\brock\b' => 'rawk',
+ 'ese\b' => 'ees',
+ 's\'s\b' => 's',
+ '\'s\b' => 's',
+ 'er\b' => 'r',
+ 'ture\b' => 'chur',
+ 'day' => 'dai',
+ '\bok\b' => 'k',
+ '\boks\b' => 'ks',
+ 'boy' => 'boi',
+ 'tion' => 'shun',
+ 'ight' => 'ite',
+ 'innocent' => 'innozent',
+ 'ph' => 'f',
+ 'es' => 'ez',
+ 'ed\b' => 'd',
+ 'ns' => 'nz',
+ 'ks' => 'kz',
+ 'ds' => 'dz',
+ 'se' => 'ze',
+ 'zs' => 's',
+ 'sz' => 'z',
+ 'ss' => 's',
+ 'cc' => 'cs',
+ 'ck' => 'k',
+ 'oa' => 'o',
+ '\bcat' => 'kat',
+ 'ive\b' => 'iv',
+ 'ake' => 'aek',
+ 'ed\b' => 'd',
+ 'ing\b' => 'in',
+ 'sion' => 'shun',
+ '\bam\b' => 'iz',
+ '\bhave\b' => 'has',
+ '\bwho' => 'hoo',
+ '\bwake\b' => 'waek',
+ '\bone\b' => '1',
+ '\btwo\b' => '2',
+ '\bto\b' => '2',
+ '\btoo\b' => '2',
+ '\bthree\b' => '3',
+ '\bfour\b' => '4',
+ '\bfor\b' => '4',
+ '\bfore\b' => '4',
+ '\bfive\b' => '5',
+ '\bsix\b' => '6',
+ '\bseven\b' => '7',
+ '\beight\b' => '8',
+ '\bnine\b' => '9',
+ '\bten\b' => '10',
+ 'god' => 'ceilin cat',
+ 'jezus' => 'jebus',
+ 'kitty' => 'kitteh',
+ 'saturdai' => 'katurdai',
+ 'allah' => 'invisible man',
+ 'delicious' => 'delishus',
+ '\bdoctor\b' => 'docta',
+ '\bdr\b' => 'docta',
+ '\bgay\b' => 'ghey',
+ '\bgood\b' => 'gud',
+ '\bever' => 'evr',
+ '\bpage\b' => 'paeg',
+ 'cheezburgr' => 'cheezburger', # fix up to canonical form
+);
+
+y/A-Z/a-z/;
+
+while (@trans_table) {
+ $key=shift @trans_table;
+ $value=shift @trans_table;
+ s/$key/$value/g;
+}
+
+s/es/ez/g;
+
+y/a-z/A-Z/;