[sword-svn] r252 - trunk/source/data/translit/crosswire

chrislit at crosswire.org chrislit at crosswire.org
Tue Feb 4 12:49:50 MST 2014


Author: chrislit
Date: 2014-02-04 12:49:50 -0700 (Tue, 04 Feb 2014)
New Revision: 252

Modified:
   trunk/source/data/translit/crosswire/LinearB_Latin.txt
Log:
big update for Linear B transliterator
It now works quite well in generating standard transliterations of Linear B and even works fairly well at transliterating Greek transliterated to Latin into Linear B (and thence to Latin that looks like it is transliterated Mycenaean Greek)


Modified: trunk/source/data/translit/crosswire/LinearB_Latin.txt
===================================================================
--- trunk/source/data/translit/crosswire/LinearB_Latin.txt	2014-02-04 01:34:38 UTC (rev 251)
+++ trunk/source/data/translit/crosswire/LinearB_Latin.txt	2014-02-04 19:49:50 UTC (rev 252)
@@ -1,22 +1,45 @@
 # ***************************************************************************
 # *
-# *  Copyright (C) 2002-2013, CrossWire Bible Society
+# *  Copyright (C) 2002-2014, CrossWire Bible Society
 # *  All Rights Reserved.
 # *
 # ***************************************************************************
 # File: LinearB_Latin.txt
 # Generated from CLDR
 
-# Based on transliteration presented in The World's Writing Systems
-# edited by Peter Daniels & William Bright, p. 126
 # Linear B-Latin
-:: NFD (NFC);
+
+:: [:Linear_B:];
+:: (NFC);
+
+$consonant = [dhkmnpqrstwzj];
+$vowel = [aeiou];
+
+# add a hyphen between Linear B signs
+([[:Linear_B:]&[:L:]])([[:Linear_B:]&[:L:]])>|$1\-$2;
+
+# Real mappings, in reverse order of Latin length
 𐁃<>dwe;
 𐁄<>dwo;
 𐁅<>nwa;
+𐁆<>phu;
 𐁇<>pte;
+𐁈<>rja;
+𐁉<>rai;
+𐁊<>rjo;
+𐁋<>tja;
+
 𐁌<>twe;
 𐁍<>two;
+
+# Remaining instances of h[^a] should become k
+|k<h}[^a];
+
+# Break consonant clusters by copying vowels
+|$1$5$2$5$3$5$4$5<($consonant)($consonant)($consonant)($consonant)($vowel);
+|$1$4$2$4$3$4<($consonant)($consonant)($consonant)($vowel);
+|$1$3$2$3<($consonant)($consonant)($vowel);
+
 𐀅<>da;
 𐀆<>de;
 𐀇<>di;
@@ -72,20 +95,18 @@
 𐀼<>za;
 𐀽<>ze;
 𐀿<>zo;
+𐁀<>ha;
+𐁁<>ai;
 𐁂<>au;
-𐁆>pu;
-𐁈>ra;
-𐁉>ra;
-𐁊>ro;
-𐁋>ta;
 𐀀<>a;
 𐀁<>e;
 𐀂<>i;
 𐀃<>o;
 𐀄<>u;
-𐁀>a;
-𐁁>a;
+
+# completeness mappings for non-syllabic Latin
 𐀅<d;
+𐁀<h;
 𐀊<j;
 𐀏<k;
 𐀔<m;
@@ -97,5 +118,48 @@
 𐀲<t;
 𐀷<w;
 𐀼<z;
+
+# Syncronize
+::Null;
+
+# eliminate doubled consonants
+|d<dd+;
+|j<jj+;
+|k<kk+;
+|m<mm+;
+|n<nn+;
+|p<pp+;
+|q<qq+;
+|r<rr+;
+|s<ss+;
+|t<tt+;
+|w<ww+;
+|z<zz+;
+
+# eliminate word-final Latin consonants
+< $consonant+ } [:^L:];
+
+# Syncronize
+::Null;
+
+# eliminate all Greek diacritics that might reasonably appear in transliteration
+< [̀́̂̃̄̆̈̓̔͂̓̈́];
+|i < ͅ;
+
+# eliminate h after consonants, except p
+< [bcdfghjklmnqrstvwxz] { h+;
+
+# completeness mappings (not covered by the cited reference)
+|p<b;
+|k<c;
+|w<f;
+|k<g;
+|k<h}[^au];
+|r<l;
+|w<v;
+|u<y;
+|ks<x;
+
+:: (NFD);
 :: (lower);
-:: NFC (NFD);
+:: ([[:Latin:][̀́̂̃̄̆̈̓̔͂̓̈́ͅ]]);




More information about the sword-cvs mailing list