From 16e4920a632a4a7981381955bb4f35ae46565c96 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sat, 17 Apr 2010 17:16:05 +0200 Subject: =?UTF-8?q?using=20metatables=20for=20table=20generation,=20allowi?= =?UTF-8?q?ng=20=E2=80=9Caddition=E2=80=9D=20of=20dictionaries?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../third/transliterator/trans_tables_trsc.lua | 56 +++++++++++----------- 1 file changed, 28 insertions(+), 28 deletions(-) (limited to 'tex/context/third/transliterator/trans_tables_trsc.lua') diff --git a/tex/context/third/transliterator/trans_tables_trsc.lua b/tex/context/third/transliterator/trans_tables_trsc.lua index b3061c0..cad3567 100644 --- a/tex/context/third/transliterator/trans_tables_trsc.lua +++ b/tex/context/third/transliterator/trans_tables_trsc.lua @@ -11,7 +11,7 @@ -- Lowercase German simple transcription---first pass -- -------------------------------------------------------- -translit.ru_trsc_low_first = { +translit.ru_trsc_low_first = translit.make_add_dict{ [" е"] = " je", ["ъе"] = "je", ["ье"] = "je", @@ -36,7 +36,7 @@ translit.tables["German transcription first pass lowercase"] = translit.ru_trsc_ -- Uppercase German simple transcription---first pass -- -------------------------------------------------------- -translit.ru_trsc_upp_first = { +translit.ru_trsc_upp_first = translit.make_add_dict{ [" Е"] = " Je", ["Ъe"] = "Je", -- Pedantic, isn't it? ["Ье"] = "Je", @@ -56,7 +56,7 @@ translit.tables["German transcription first pass uppercase"] = translit.ru_trsc_ -- Lowercase German simple transcription -- ------------------------------------------- -translit.ru_trsc_low = { +translit.ru_trsc_low = translit.make_add_dict{ ["а"] = "a", ["б"] = "b", ["в"] = "w", @@ -98,7 +98,7 @@ translit.tables["German transcription second pass lowercase"] = translit.ru_trsc -- Uppercase German simple transcription -- ------------------------------------------- -translit.ru_trsc_upp = { +translit.ru_trsc_upp = translit.make_add_dict{ ["А"] = "A", ["Б"] = "B", ["В"] = "W", @@ -147,7 +147,7 @@ function translit.gen_rules_de() -- Russian vowels as well consonants that were defined earlier. -- The й-rule, VйC -> ViC - translit.ru_trsc_irule = {} + translit.ru_trsc_irule = translit.make_add_dict{} for _, vow in ipairs(translit.ru_vowels) do for _, cons in ipairs(translit.ru_consonants) do local new_ante = vow .. "й" .. cons @@ -177,7 +177,7 @@ function translit.gen_rules_de() translit.tables["German transcription j-rule"] = translit.ru_trsc_jrule -- The с-rule, VсV -> VssV - translit.ru_trsc_srule = {} + translit.ru_trsc_srule = translit.make_add_dict{} for i, vow_1 in ipairs(translit.ru_vowels) do for j, vow_2 in ipairs(translit.ru_vowels) do local new_ante = vow_1 .. "с" .. vow_2 @@ -189,7 +189,7 @@ function translit.gen_rules_de() translit.tables["German transcription s-rule"] = translit.ru_trsc_srule -- The sharp-s-rule, Vсх -> Vßх - translit.ru_trsc_sharpsrule = {} + translit.ru_trsc_sharpsrule = translit.make_add_dict{} for i, vow in ipairs(translit.ru_vowels) do local new_ante = vow .. "сх" local new_post = vow .. "ßх" @@ -199,7 +199,7 @@ function translit.gen_rules_de() translit.tables["German transcription sharp-s-rule"] = translit.ru_trsc_sharpsrule -- The е-rule, Vе -> Vje - translit.ru_trsc_jerule = {} + translit.ru_trsc_jerule = translit.make_add_dict{} for i, vow in ipairs(translit.ru_vowels) do local new_ante = vow .. "е" local new_post = vow .. "je" @@ -211,7 +211,7 @@ function translit.gen_rules_de() -- The ё-rule, Vё -> Vjo -- This should be redundant as [жцчшщ]ё -> o, else ё -> jo . -- Somebody should teach those DUDEN-guys parsimony. - translit.ru_trsc_jorule = {} + translit.ru_trsc_jorule = translit.make_add_dict{} for i, vow in ipairs(translit.ru_vowels) do local new_ante = vow .. "ё" local new_post = vow .. "jo" @@ -226,7 +226,7 @@ end -- Lowercase English simple transcription---first pass -- --------------------------------------------------------- -translit.ru_trsc_en_low_first = { +translit.ru_trsc_en_low_first = translit.make_add_dict{ [" е"] = " ye", ["ъе"] = "ye", ["ье"] = "ye", @@ -240,7 +240,7 @@ translit.tables["English transcription lowercase first pass"] = translit.ru_trsc -- Uppercase English simple transcription---first pass -- --------------------------------------------------------- -translit.ru_trsc_en_upp_first = { +translit.ru_trsc_en_upp_first = translit.make_add_dict{ [" Е"] = " Ye", ["Ъe"] = "Ye", ["Ье"] = "Ye", @@ -252,7 +252,7 @@ translit.tables["English transcription uppercase first pass"] = translit.ru_trsc -- Lowercase English simple transcription -- -------------------------------------------- -translit.ru_trsc_en_low = { +translit.ru_trsc_en_low = translit.make_add_dict{ ["а"] = "a", ["б"] = "b", ["в"] = "v", @@ -294,7 +294,7 @@ translit.tables["English transcription lowercase second pass"] = translit.ru_trs -- Uppercase English simple transcription -- -------------------------------------------- -translit.ru_trsc_en_upp = { +translit.ru_trsc_en_upp = translit.make_add_dict{ ["А"] = "A", ["Б"] = "B", ["В"] = "V", @@ -335,7 +335,7 @@ translit.tables["English transcription uppercase second pass"] = translit.ru_trs function translit.gen_rules_en () -- The english е-rule, Vе -> Vye - translit.ru_trsc_en_jerule = {} + translit.ru_trsc_en_jerule = translit.make_add_dict{} for i, vow in ipairs(translit.ru_vowels) do local new_ante = vow .. "е" local new_post = vow .. "ye" @@ -350,7 +350,7 @@ end -- Lowercase Czech transcription -- ----------------------------------- -translit.ru_trsc_cz_low = { +translit.ru_trsc_cz_low = translit.make_add_dict{ ["а"] = "a", ["б"] = "b", ["в"] = "v", @@ -392,7 +392,7 @@ translit.tables["Czech transcription lowercase"] = translit.ru_trsc_cz_low -- Uppercase Czech transcription -- ----------------------------------- -translit.ru_trsc_cz_upp = { +translit.ru_trsc_cz_upp = translit.make_add_dict{ ["А"] = "A", ["Б"] = "B", ["В"] = "V", @@ -434,7 +434,7 @@ translit.tables["Czech transcription uppercase"] = translit.ru_trsc_cz_upp -- Lowercase Additional Czech Transcription -- ---------------------------------------------- -translit.ru_trsc_cz_add_low = { +translit.ru_trsc_cz_add_low = translit.make_add_dict{ ["ѕ"] = "dz", ["з"] = "z", ["ꙁ"] = "z", @@ -460,7 +460,7 @@ translit.tables["Czech transcription for OCS and pre-1918 lowercase"] = translit -- Uppercase Additional Czech Transcription -- ---------------------------------------------- -translit.ru_trsc_cz_add_upp = { +translit.ru_trsc_cz_add_upp = translit.make_add_dict{ ["Ѕ"] = "Dz", ["З"] = "Z", ["Ꙁ"] = "Z", @@ -500,9 +500,9 @@ function translit.transcript (mode, text) local p_de function tab_subst (s, ...) - local p_tmp, tmp = nil, {} + local p_tmp, tmp = nil, translit.make_add_dict{} for _,tab in ipairs(arg) do - translit.add_table( tmp, tab) + tmp = tmp + tab end p_tmp = addrules(tmp, p_tmp) local fp = Cs((Cs(P(p_tmp) / tmp) + utfchar)^0) @@ -541,16 +541,16 @@ function translit.transcript (mode, text) if mode == "ru_transcript_de_exp" then - local de_low_upp = {} - de_low_upp = translit.add_table( de_low_upp, translit.ru_trsc_upp, translit.ru_trsc_low ) + local de_low_upp = translit.make_add_dict{} + de_low_upp = translit.ru_trsc_upp + translit.ru_trsc_low local twochar - local tworepl = {} + local tworepl = translit.make_add_dict{} twochar = addrules( translit.ru_trsc_low_first, twochar ) twochar = addrules( translit.ru_trsc_upp_first, twochar ) - tworepl = translit.add_table( tworepl, translit.ru_trsc_low_first, translit.ru_trsc_upp_first ) + tworepl = translit.ru_trsc_low_first + translit.ru_trsc_upp_first -- The й-rule, VйC -> ViC local function V_i_C (s) @@ -653,16 +653,16 @@ function translit.transcript (mode, text) elseif mode == "ru_transcript_en_exp" then - local en_low_upp = {} - en_low_upp = translit.add_table(en_low_upp, translit.ru_trsc_en_low, translit.ru_trsc_en_upp) + local en_low_upp = translit.make_add_dict{} + en_low_upp = translit.ru_trsc_en_low + translit.ru_trsc_en_upp local twochar - local tworepl = {} + local tworepl = translit.make_add_dict{} twochar = addrules( translit.ru_trsc_en_low_first, twochar) twochar = addrules( translit.ru_trsc_en_upp_first, twochar) - tworepl = translit.add_table(tworepl, translit.ru_trsc_en_low_first, translit.ru_trsc_en_upp_first) + tworepl = translit.ru_trsc_en_low_first + translit.ru_trsc_en_upp_first -- The е-rule, Vе -> Vye local function V_je (s) -- cgit v1.2.3