Acme-Tie-Eleet

 view release on metacpan or  search on metacpan

lib/Acme/Tie/Eleet.pm  view on Meta::CPAN

every two chars, whereas 'spacer => 0' will add no extra spaces. Or
you can provide a pattern of the form "m/n" which will be understood
as 'add an extra space after each of the m next chars, then do not add
extra space after the n next chars'. For example, 'spacer => "1/1"'
will add an extra space after one char out of two, whereas 'spacer =>
"1/0" will add extra spaces after each char. Default is 0 (no extra
space). T h a t   r o c k s !


=item o case_mixer => <percentage>|<pattern>

Put some chars into uppercase. You can tell it to convert random chars
with a given percentage. Eg, 'case_mixer => 50' will convert a mean of
1 char every two chars, whereas 'case_mixer => 100' will convert every
character. Or you can provide a pattern of the form "m/n" which will
be understood as 'uppercase m chars, then do not uppercase the n next
chars'. For example, 'case_mixer => "2/1"' will convert two chars,
then left one char unchanged; whereas 'case_mixer => "0/1"' won't
convert any chars. Default is 50 (random 1 out of 2). CaSE mIxIng
RUleZ!


=item o words      => <true>|<false>

Transform words given a dictionnary. For exampe, transform 'hacker' to
'haxor', and so on... Either true or false, default to false. Kewl stuff!


=item o add_before => <percentage>

Add some preamble randomly with a given percentage. For example, it
could transform "this is my sentence." to "Yeah man, this is my
sentence.". Default to 15.


=item o add_after  => <percentage>

Terminate a sentence randomly with an hacker expression according to a
given percentage. For example, it could transform "this is my
sentence." to "this is my sentence, fear us.". Default to 15.


=item o extra_sent => <percentage>

Add randomly whole sentences to the filehandle. If filehandle is read
from, it won't return the next chunk of text, but rather a leave it
where it stands and return a sentence of its own. Default to 10. All
your base are belong to us!


=back


=head1 BUGS

B</!\ WARNING>: as of Perl 5.8.0, TIEHANDLE seems to be B<broken>. So,
I decided to remove ties on STDOUT and STDERR, and commented the
relevant parts in the test suite.

Don't try to tie a filehandle if you're running a Perl version greater
or equal to 5.8.0, because you will start a I<deep recursion loop> as
says Perl... I'll try to fix it when I'll find some time.


=head1 TODO

=over 4

=item o

Find more h4x0R quotes to add.


=item o

Allow user to provide a dictionnary for words. Backward compatibility
would be ok since a ref to a hash evaluates to true.


=item o

Allow user to provide a hash of quotes for both add_before /
add_after. Backward compatibility would be ok since a ref to a hash
evaluates to true.


=item o

Allow user to provide an array of quotes to add. Backward
compatibility would be ok since a ref to a hash evaluates to true.


=item o

Allow tie-ing for input filehandle.

=back


=head1 BUGS

Please report any bugs or feature requests to C<bug-acme-tie-eleet at
rt.cpan.org>, or through the web interface at
L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Acme-Tie-Eleet>.
I will be notified, and then you'll automatically be notified of progress on
your bug as I make changes.



=head1 SEE ALSO

L<perl>, the L<news://alt.2600> newsgroup, L<http://www.google.com/intl/xx-hacker/>.


=head1 AUTHOR

Jerome Quelin, C<< <jquelin at cpan.org> >>


=head1 COPYRIGHT & LICENSE



( run in 2.318 seconds using v1.01-cache-2.11-cpan-364913b4093 )