Acme-Insult-Pirate
view release on metacpan or search on metacpan
[](https://github.com/sanko/Acme-Insult-Pirate/actions) [](https://metacpan.org/relea...
# NAME
Acme::Insult::Pirate - Programmatically Generate Pirate Themed Insults
# SYNOPSIS
```perl
use Acme::Insult::Pirate qw[insult];
say insult( ); # stringify
```
# DESCRIPTION
Acme::Insult::Pirate provides pirate themed 'insulting' statements generated by the Pirate Monkeyness Pirate Insult
API.
# METHODS
These functions may be imported by name or wit' the `:all` tag.
lib/Acme/Insult/Pirate.pm view on Meta::CPAN
=encoding utf-8
=head1 NAME
Acme::Insult::Pirate - Programmatically Generate Pirate Themed Insults
=head1 SYNOPSIS
use Acme::Insult::Pirate qw[insult];
say insult( ); # stringify
=head1 DESCRIPTION
Acme::Insult::Pirate provides pirate themed 'insulting' statements generated by the Pirate Monkeyness Pirate Insult
API.
=head1 METHODS
These functions may be imported by name or wit' the C<:all> tag.
script/pirate_insult.pl view on Meta::CPAN
#~ @ARGV = qw[-json];
#~ @ARGV = qw[-h];
#
my $raw = 0;
sub _echo ($insult) {
$raw && eval 'require JSON::Tiny' ? JSON::Tiny::encode_json( {%$insult} ) : $insult;
}
GetOptions( \my %h, 'help' => sub { pod2usage( -exitval => 1 ) }, 'json!' => \$raw );
my $shade = Acme::Insult::Pirate::insult(%h);
exit !( $shade ? say _echo($shade) : !say( $raw ? 'null' : '' ) );
__END__
=head1 NAME
evil_insult - Generate evil insults on the terminal
=head1 SYNOPSIS
evil_insult # generate a random insult
evil_insult -json # insult someone if you're a robot
( run in 2.967 seconds using v1.01-cache-2.11-cpan-364913b4093 )