Acme-Umlautify

 view release on metacpan or  search on metacpan

lib/Acme/Umlautify.pm  view on Meta::CPAN

package Acme::Umlautify;
$Acme::Umlautify::VERSION = '1.07';

require Exporter;
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 );

lib/Acme/Umlautify.pm  view on Meta::CPAN


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 - Äd̈d̈ Üm̈l̈äüẗs̈ ẗö ëv̈ër̈ÿẗḧïn̈g̈!̈

=head1 S̈ŸN̈ÖP̈S̈ÏS̈:̈

Acme::Umlautify öf̈f̈ër̈s̈ b̈öẗḧ än̈ öb̈j̈ëc̈ẗ-̈ör̈ïën̈ẗëd̈ ïn̈ẗër̈f̈äc̈ë än̈d̈ än̈ ëẍp̈ör̈ẗëd̈ m̈ëẗḧöd̈
ẗö ẗr̈än̈s̈f̈ör̈m̈ s̈ẗr̈ïn̈g̈s̈ öf̈ ẗëẍẗ ïn̈ẗö ẗḧë z̈ën̈ öf̈ ëẍc̈ës̈s̈ïv̈ë üm̈l̈äẗäüg̈ë.̈

t/02_method.t  view on Meta::CPAN

use Acme::Umlautify;
use Test::Simple tests => 3;
use utf8;
use strict;

ok(umlautify('This is a test of the emergency umlaut system!') eq 'T̈ḧïs̈ ïs̈ ä ẗës̈ẗ öf̈ ẗḧë ëm̈ër̈g̈ën̈c̈ÿ üm̈l̈äüẗ s̈ÿs̈ẗëm̈!̈', 'String comparison');

my @array = umlautify(qw/foo bar baz/);
my $test  = join ':', @array;

ok(scalar(@array) == 3, 'Array count');
ok($test eq 'f̈öö:b̈är̈:b̈äz̈', 'Array test');

t/03_oo.t  view on Meta::CPAN

use Acme::Umlautify;
use Test::Simple tests => 4;
use utf8;
use strict;

my $au = new Acme::Umlautify;

ok($au);

my $check = $au->do('This is a test of the emergency umlaut system!');
ok($check eq 'T̈ḧïs̈ ïs̈ ä ẗës̈ẗ öf̈ ẗḧë ëm̈ër̈g̈ën̈c̈ÿ üm̈l̈äüẗ s̈ÿs̈ẗëm̈!̈','String comparison');

my @array = $au->do(qw/foo bar baz/);



( run in 1.044 second using v1.01-cache-2.11-cpan-49f99fa48dc )