Revert "FuncBuiltins: maybe-the: do it for all words"

This reverts commit 7093fa0ae4.
This commit is contained in:
Pragmatic Software 2022-08-03 11:25:05 -07:00
parent 7093fa0ae4
commit e656fb46cf
2 changed files with 18 additions and 27 deletions

View File

@ -76,7 +76,7 @@ sub initialize {
$self->{pbot}->{functions}->register(
'maybe-the',
{
desc => 'prepend "the" in front of words depending on their part-of-speech',
desc => 'prepend "the" in front of text depending on the part-of-speech of the first word in text',
usage => 'maybe-the <text>',
subref => sub { $self->func_maybe_the(@_) }
}
@ -169,35 +169,26 @@ sub func_ana {
sub func_maybe_the {
my $self = shift;
my $text = "@_";
my @words = split ' ', $text;
my @result;
foreach my $part (@words) {
my ($word) = $part =~ m/^\s*([^',.;: ]+)/;
my ($word) = $text =~ m/^\s*([^',.;: ]+)/;
# don't prepend "the" if a proper-noun nick follows
if ($self->{pbot}->{nicklist}->is_present_any_channel($word)) {
push @result, $part;
next;
}
# special-case some indefinite nouns that Lingua::EN::Tagger treats as plain nouns
if ($word =~ m/(some|any|every|no)(thing|one|body|how|way|where|when|time|place)/i) {
push @result, $part;
next;
}
my $tagged = $self->{tagger}->add_tags($word);
if ($tagged !~ m/^\s*<(?:det|prps?|cd|in|nnp|to|rb|wdt|rbr|jjr)>/) {
push @result, "the $part";
next;
}
push @result, $part;
# don't prepend "the" if a proper-noun nick follows
if ($self->{pbot}->{nicklist}->is_present_any_channel($word)) {
return $text;
}
return join ' ', @result;
# special-case some indefinite nouns that Lingua::EN::Tagger treats as plain nouns
if ($word =~ m/(some|any|every|no)(thing|one|body|how|way|where|when|time|place)/i) {
return $text;
}
my $tagged = $self->{tagger}->add_tags($word);
if ($tagged !~ m/^\s*<(?:det|prps?|cd|in|nnp|to|rb|wdt|rbr|jjr)>/) {
$text = "the $text";
}
return $text;
}
1;

View File

@ -25,7 +25,7 @@ use PBot::Imports;
# These are set by the /misc/update_version script
use constant {
BUILD_NAME => "PBot",
BUILD_REVISION => 4562,
BUILD_REVISION => 4561,
BUILD_DATE => "2022-08-03",
};