#!/usr/bin/perl use utf8::all; use strict; undef $/; sub diaeresisac{ my $a=q{ιυaeıou}; my $b=q{ϊϋäëïöü}; my $ac='[¨]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub tilteac{ my $a=q{αηιυωaeıounAEOOU}; my $b=q{ᾶῆῖῦῶãẽĩõũñÃẼĨÕŨ}; my $ac='[῀˜]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub acuteac{ my $a=q{αεηιουωaeıou}; my $b=q{άέήίόύώáéíóú}; my $ac='[´´′]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub smoothac{ my $a=q{Αῖάέήίόύώαεηιουω}; my $b=q{Ἀἶἄἔἤἴὄὔὤἀἐἠἰὀὐὠ}; my $ac='[’᾿]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub macronac{ my $a=q{αιυaeıouAEIOU}; my $b=q{ᾱῑῡāēīōūĀĒĪŌŪ}; my $ac='[¯ˉ]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub breveac{ my $a=q{αιυaeıouAEIOU}; my $b=q{ᾰῐῠăĕĭŏŭĂĔĬŎŬ}; my $ac='[˘]'; my %t; @t{split(//,$a)}= split(//,$b); my $pat="${ac}([$a])|([$a])$ac"; s!$pat!$t{"$1$2"}!g; } sub _offnac{ s/a˘|˘a/ă/g; s/A˘|˘A/Ă/g; s/e˘|˘e/ĕ/g; s/E˘|˘E/Ĕ/g; s/ı˘|˘ı/ĭ/g; s/I˘|˘I/Ĭ/g; s/o˘|˘o/ŏ/g; s/O˘|˘O/Ŏ/g; s/u˘|˘u/ŭ/g; s/U˘|˘U/Ŭ/g; s/a¯|¯a/ā/g; s/A¯|¯A/Ā/g; s/e¯|¯e/ē/g; s/E¯|¯E/Ē/g; s/ı¯|¯ı/ī/g; s/I¯|¯I/Ī/g; s/o¯|¯o/ō/g; s/O¯|¯O/Ō/g; s/u¯|¯u/ū/g; s/u¯|¯U/Ū/g; } while(<>){ macronac(); breveac(); acuteac(); tilteac(); smoothac(); diaeresisac(); print; } __END__ Breathing, etc.::Accent:: :: Vowels :: Rho — :: Subscript — :: — :: :: α :: ε :: η :: ι :: ο :: υ :: ω :: ᾳ :: ῃ :: ῳ :: ρ Acute :: ´ :: ά :: έ :: ή :: ί :: ό :: ύ :: ώ :: ᾴ :: ῄ :: ῴ :: Grave :: ` :: ὰ :: ὲ :: ὴ :: ὶ :: ὸ :: ὺ :: ὼ :: ᾲ :: ῂ :: ῲ :: Circflex:: ῀ :: ᾶ :: :: ῆ :: ῖ :: :: ῦ :: ῶ :: ᾷ :: ῇ :: ῷ :: Smooth :: —:: ᾿ :: ἀ :: ἐ :: ἠ :: ἰ :: ὀ :: ὐ :: ὠ :: ᾀ :: ᾐ :: ᾠ :: ῤ Acute :: ῎ :: ἄ :: ἔ :: ἤ :: ἴ :: ὄ :: ὔ :: ὤ :: ᾄ :: ᾔ :: ᾤ :: Grave :: ῍ :: ἂ :: ἒ :: ἢ :: ἲ :: ὂ :: ὒ :: ὢ :: ᾂ :: ᾒ :: ᾢ :: Circflex:: ῏ :: ἆ :: :: ἦ :: ἶ :: :: ὖ :: ὦ :: ᾆ :: ᾖ :: ᾦ :: Rough :: — :: ῾ :: ἁ :: ἑ :: ἡ :: ἱ :: ὁ :: ὑ :: ὡ :: ᾁ :: ᾑ :: ᾡ :: ῥ Acute :: ῞ :: ἅ :: ἕ :: ἥ :: ἵ :: ὅ :: ὕ :: ὥ :: ᾅ :: ᾕ :: ᾥ :: Grave :: ῝ :: ἃ :: ἓ :: ἣ :: ἳ :: ὃ :: ὓ :: ὣ :: ᾃ :: ᾓ :: ᾣ :: Circflex:: ῟ :: ἇ :: :: ἧ :: ἷ :: :: ὗ :: ὧ :: ᾇ :: ᾗ :: ᾧ :: Diaeresis:::: ¨ :: :: :: :: ϊ :: :: ϋ :: :: :: :: :: Acute :: ΅ :: :: :: :: ΐ :: :: ΰ :: :: :: :: :: Grave :: ῭ :: :: :: :: ῒ :: :: ῢ :: :: :: :: :: Circflex:: ῁ :: :: :: :: ῗ :: :: ῧ :: :: :: :: :: Macron:: — :: ˉ :: ᾱ :: :: :: ῑ :: :: ῡ :: :: :: :: :: Breve :: ˘ :: ᾰ :: :: :: ῐ :: :: ῠ :: :: :: :: :: LATIM____________________________________________________________________