X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FText%2FHomestuck.pm;h=88354ed355876fc3960f7590efc9493df37c9d2f;hb=6b060d8e14bd50fd91972f25f4011c8f861dcede;hp=6d9b4fdcb18e3ef9db74da30c2343b156d1be23c;hpb=4d0a1f46292ef64aa85b44819f10f1fe1805d1ad;p=text-homestuck.git diff --git a/lib/Text/Homestuck.pm b/lib/Text/Homestuck.pm index 6d9b4fd..88354ed 100644 --- a/lib/Text/Homestuck.pm +++ b/lib/Text/Homestuck.pm @@ -3,33 +3,113 @@ package Text::Homestuck; use 5.014000; use strict; use warnings; - -require Exporter; - -our @ISA = qw(Exporter); - -# Items to export into callers namespace by default. Note: do not export -# names by default without a very good reason. Use EXPORT_OK instead. -# Do not simply export all your public functions/methods/constants. - -# This allows declaration use Text::Homestuck ':all'; -# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK -# will save memory. -our %EXPORT_TAGS = ( 'all' => [ qw( - -) ] ); - -our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); - -our @EXPORT = qw( - -); - +use parent qw/Exporter/; +our @EXPORT = qw/aradia tavros sollux karkat nepeta kanaya terezi vriska equius gamzee eridan feferi/; our $VERSION = '0.000_001'; -$VERSION = eval $VERSION; # see L -# Preloaded methods go here. +sub aradia (_) { + local $_ = $_[0]; + y/A-Z/a-z/; + y/,.?//d; + s/o/0/g; + $_ +} + +sub tavros (_) { + local $_ = $_[0]; + y/a-zA-Z.!?/A-Za-z,,,/; + s/:\)/}:)/g; + $_ +} + +sub sollux (_) { + local $_ = $_[0]; + y/A-Z/a-z/; + y/s/2/; + s/i/ii/g; + s/to/two/g; + s/\b(fuck|joke|kk|aa)\b/\U$1/g; + $_ +} + +sub karkat (_) { + local $_ = $_[0]; + y/a-z/A-Z/; + s/\bD:/D:B/; + $_ +} + +sub nepeta (_){ + local $_ = $_[0]; + y/A-Z/a-z/; + s/ee/33/; + $_ = ":33 < $_"; + $_ +} + +sub kanaya (_) { + local $_ = $_[0]; + y/,.!?'//d; + s/\b(\w)/\u$1/g; + $_ +} + +sub terezi (_) { + local $_ = $_[0]; + y/a-z/A-Z/; + y/AIE/413/; + s/(!|\?)/$1$1/g; + s/:\]|:\)/>:]/g; + $_ +} + +sub vriska (_) { + local $_ = $_[0]; + y/Bb/88/; + s/:\)/::::\)/g; + s/D:/D::::/g; + $_ +} + +sub equius (_){ + local $_ = $_[0]; + s/strong/STRONG/g; + s/strength/STRONGNESS/g; + s/x/%/ig; + s/loo/100/ig; + s/ool/001/ig; + s/[?.!]$//; + $_ = "D --> $_"; + $_ +} + +sub gamzee (_){ + local $_ = $_[0]; + y/[A-Z]/[a-z]/; + s/([a-z])(.)/$1\u$2/g; + s/:\)/:o\)/g; + $_ +} + +sub eridan (_){ + local $_ = $_[0]; + y/',.?!//d; + s/w/ww/g; + s/v/vv/g; + s/ing/in/g; + s/want to/wanna/g; + s/going to/gonna/g; + $_ +} + +sub feferi (_){ + local $_ = $_[0]; + s/H/)(/g; + s/E/-E/g; + s/:\)/38)/g; + $_ +} 1; __END__ @@ -60,14 +140,8 @@ None by default. =head1 SEE ALSO -Mention other useful documentation such as the documentation of -related modules or operating system documentation (such as man pages -in UNIX), or any relevant external documentation such as RFCs or -standards. - -If you have a mailing list set up for your module, mention it here. - -If you have a web site set up for your module, mention it here. +Homestuck: L +The mspa wiki page listing the quirks: http://mspaintadventures.wikia.com/wiki/Typing_Quirk =head1 AUTHOR