Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #10 from mariux64/names
names.
  • Loading branch information
wwwutz committed Dec 1, 2022
2 parents b117b7c + d9beda4 commit b58118d
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 2 deletions.
47 changes: 46 additions & 1 deletion chicken.1
Expand Up @@ -29,7 +29,7 @@
.SH NAME
chicken \- Pukaaak honk bwwwaaaaaaaaaak cluck? Pukaaak.
.SH SYNOPSIS
.BR chicken " [" \-nw " "numwords ] " "[ \-en " " enum "]"
.BR chicken " [" "\-nw numwords" "] [" "\-en enum" "] [" \-namethischicken "] [" \-printchickenversion "]"
.SH DESCRIPTION
Bok
.B chicken
Expand All @@ -42,6 +42,13 @@ Honk puk cluckity puk cluckity cluck puk Honk cluck-a-buh-gawk Honk Bwak cluckit
.TP
.B \-en
Cock-a-doodle-doo Cluck-cluck-cluck bwak cluck Bwok... Waaak puk pukaaak cluck-cluck-cluck Bwak Bwok cock-a-doodle-doo Bwok Cock-a-doodle-doo bok.
.TP
.B \-namethischicken
Bok-bok! Cluck-a-buh-gawk Bwak-bwak? Bwwwaaaaak Honk-honk. Honk Waaaak bwok-bwok Pukak-pukaaaak pukaak-pukak honk gobble Waaaaaak-waaaaak cluck-a-buh-gawk-cluck-a-buh-gawk-cluck-a-buh-gawk pukaaaaaak bok-bok bwwwaak... Honk Bwak waak-waaaaaaak Gobble Cluck-a-buh-gawk-cluck-a-buh-gawk Cluck cluck-a-buh-gawk... Cock-a-dooodle-dooooooo puk. Bwak-bwak puk cluck Gobble bwok? Bwok? Cluckity-cluckity... Cluckity-cluckity gobble-gobble gobble-gobble-gobble waaak Wak-waaaaaaak-waaaaaaak cluck-a-buh-gawk-cluck-a-buh-gawk Gobble!
.TP
.B \-printchickenversion
6.0

.SH FILES
Cluckity: cluck-a-buh-gawk puk waaak Cock-a-doodle-doo... Honk Cluckity Bok cluck-cluck-cluck cluck-a-buh-gawk gobble-gobble bwak.
.SH BUGS
Expand All @@ -53,6 +60,44 @@ Bok.
.SH HISTORY
Cluckity? Cock-a-doodle-doo bwwwaaaaaaaaaak...
.PP
.SH AUTHORS
Cluckity Bwak,
Bok Bwok-Bok,
Gobble Bok-Bwwwaak,
Bwak Pukaak-Waak,
Gobble Pukaak-Bwak,
Bwak Honk-Bok,
Honk Cluckity-Bwwwaak,
Cluckity Bok-Bwok,
Bwak Waak-Cluck,
Bwak Bwak-Waak,
Gobble Pukaak-Bwwwaak,
Bwok Bwok-Puk,
Cluck Honk-Bwwwaak,
Cluckity Gobble-Bwwwaak,
Bwak Puk-Cluckity,
Cluck Bwwwaak-Puk,
Honk Cluckity,
Bwwwaak Pukaak-Cluck,
Cluckity Bwwwaak-Bwak,
Puk Pukaak-Puk,
Pukaak Bwak-Puk,
Bok Waak-Cluckity,
Bwwwaak Cluck-Bwak,
Bok Waak-Honk,
Gobble Honk-Cluck,
Cluckity Honk-Cluckity,
Gobble Pukaak-Bwak,
Honk Bok-Cluck,
Bok Bok-Honk,
Bok Waak,
Gobble Bwok-Cluck,
Puk Honk-Bwak,
Honk Gobble-Bok,
Puk Gobble-Pukaak,
Cluckity Gobble-Waak,
Cluckity Bwok-Gobble
.PP
.SH SEE ALSO
.BR mimimi "(1), " yeehaw "(1), " snooze "(1), "
.BR yawn (1)
31 changes: 30 additions & 1 deletion chicken.pl
Expand Up @@ -2,7 +2,7 @@
use strict;
use Getopt::Long;

my $VERSION = '5.0';
my $VERSION = '6.0';

sub USAGE {
print <<"eof";
Expand All @@ -11,6 +11,7 @@ sub USAGE {
--numberofwords -nw <n[-m]> : number of words, ranged from n to m
--enumerate -en <n> : create a list of arguments
--namethischicken : tell the chickens name
--printchickenversion : print out "$VERSION"
eof
Expand All @@ -24,13 +25,15 @@ sub USAGE {
my $opt_numberOfWordsRange = '15-75';
my $opt_numberOfWordsRangeStart = 0;
my $numberOfWords = 0;
my $opt_namethischicken = 0;

my ( $f, $t ) = ( 0, 0 );
my $opt_enumerate = 0;

GetOptions(
'numberofwords|nw=s' => \$opt_numberOfWordsRange,
'enumerate|en=i' => \$opt_enumerate,
'namethischicken' => \$opt_namethischicken,
'printchickenversion' => \$opt_version,
) or USAGE;

Expand All @@ -43,6 +46,32 @@ sub USAGE {

my @PUNCTUATIONS = ( ".", "...", "!", "?" );

if ($opt_namethischicken) {

my %ChickenPopulation;
my @ChickenNames = grep { !/-/ } @WORDS;

for my $pn (@ChickenNames) {
for my $ln (@ChickenNames) {
$ChickenPopulation{ ucfirst($pn) . ' ' . ucfirst($ln) } = $pn eq $ln ? 1 : 2;
}
}

# "Waak Bok" could also be married to "Cluck" which would end up in "Waak Bok-Cluck"
for my $pn (@ChickenNames) {
for ( keys %ChickenPopulation ) {
push @_, ucfirst($pn) . ' ' . $_ unless $ChickenPopulation{$_} == 1;
}
}

for (@_) { s/( \w+) /$1-/; $ChickenPopulation{$_} = 3 }
my @CN = keys %ChickenPopulation;

my $chickensname = $CN[ rand( scalar @CN ) ];
print "$chickensname\n";
exit;
}

if ( $opt_numberOfWordsRange =~ m/^\d+$/ ) {
$opt_numberOfWords = $opt_numberOfWordsRange;
}
Expand Down

0 comments on commit b58118d

Please sign in to comment.