Acme-Umlautify
view release on metacpan or search on metacpan
lib/Acme/Umlautify.pm view on Meta::CPAN
require DynaLoader;
use utf8;
use warnings;
use strict;
push our @ISA, 'Exporter';
our @EXPORT = qw/umlautify umlautify_latin/;
our @EXPORT_OK = qw/umlautify umlautify_latin/;
our %map = ( A => 196, E => 203, I => 207, O => 214, U => 220, a => 228,
e => 235, i => 239, o => 246, u => 252, y => 255 );
sub new {
bless({},$_[0]);
}
sub do {
my $self = shift @_;
return $self->umlautify(@_);
}
sub umlautify {
shift @_ if ref $_[0] eq 'Acme::Umlautify';
my @out = map { join '', map { $_ =~ /[\s\t\n]/ ? $_ : "$_\x{0308}" } split '', $_; } @_;
return wantarray ? @out : $out[0];
}
sub umlautify_latin {
shift @_ if ref $_[0] eq 'Acme::Umlautify';
our %map;
my @out = map { join '', map { $_=chr($map{$_}) if $map{$_}; $_ } split '', $_; } @_;
return wantarray ? @out : $out[0];
}
__END__
=encoding utf8
=head1 NAME:
Acme::Umlautify - AÌdÌdÌ UÌmÌlÌaÌuÌtÌsÌ tÌoÌ eÌvÌeÌrÌyÌtÌhÌiÌnÌgÌ!Ì
( run in 1.394 second using v1.01-cache-2.11-cpan-3b35f9de6a3 )