use TeX::Hyphen;
my $hyp = new TeX::Hyphen leftmin => 2, rightmin => 3; # "hyphen.tex";
while (my $line = <>) {
chomp $line;
for my $word (split /([^’\w]+)/, $line) {
if ($word =~ /\w/) {
print $hyp->visualize($word) =~ s/-/\N{SOFT HYPHEN}/gr;
} else {
print $word;
}
}
print "\n";
}