Changes of com.discord v1181
This commit is contained in:
parent
f52990c3c2
commit
5a8adcbf82
29917 changed files with 1840412 additions and 1765629 deletions
|
@ -1,3 +0,0 @@
|
|||
fabric-identifier=com.crashlytics.sdk.android:answers
|
||||
fabric-version=1.4.7
|
||||
fabric-build-type=source
|
|
@ -1,3 +0,0 @@
|
|||
fabric-identifier=com.crashlytics.sdk.android:beta
|
||||
fabric-version=1.2.10
|
||||
fabric-build-type=source
|
|
@ -1,3 +0,0 @@
|
|||
fabric-identifier=com.crashlytics.sdk.android.crashlytics-core
|
||||
fabric-version=2.7.0
|
||||
fabric-build-type=source
|
|
@ -1,3 +0,0 @@
|
|||
fabric-identifier=com.crashlytics.sdk.android.crashlytics-ndk
|
||||
fabric-version=2.1.0
|
||||
fabric-build-type=source
|
|
@ -1,3 +0,0 @@
|
|||
fabric-identifier=com.crashlytics.sdk.android:crashlytics
|
||||
fabric-version=2.10.0
|
||||
fabric-build-type=source
|
|
@ -1,20 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2015 Twitter, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
|
||||
fabric-identifier=io.fabric.sdk.android:fabric
|
||||
fabric-version=1.4.8
|
||||
fabric-build-type=source
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=firebase-analytics
|
||||
firebase-analytics_client=17.2.2
|
||||
firebase-analytics_client=17.4.2
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
version=17.2.2
|
||||
client=firebase-core
|
||||
firebase-core_client=17.2.2
|
3
com.discord/unknown/firebase-crashlytics-ndk.properties
Normal file
3
com.discord/unknown/firebase-crashlytics-ndk.properties
Normal file
|
@ -0,0 +1,3 @@
|
|||
version=17.0.1
|
||||
client=firebase-crashlytics-ndk
|
||||
firebase-crashlytics-ndk_client=17.0.1
|
3
com.discord/unknown/firebase-crashlytics.properties
Normal file
3
com.discord/unknown/firebase-crashlytics.properties
Normal file
|
@ -0,0 +1,3 @@
|
|||
version=17.0.1
|
||||
client=firebase-crashlytics
|
||||
firebase-crashlytics_client=17.0.1
|
|
@ -1,3 +1,3 @@
|
|||
version=19.0.0
|
||||
version=19.1.0
|
||||
client=firebase-dynamic-links
|
||||
firebase-dynamic-links_client=19.0.0
|
||||
firebase-dynamic-links_client=19.1.0
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=16.0.0
|
||||
version=16.1.0
|
||||
client=firebase-encoders-json
|
||||
firebase-encoders-json_client=16.0.0
|
||||
firebase-encoders-json_client=16.1.0
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=20.0.2
|
||||
version=20.2.0
|
||||
client=firebase-iid
|
||||
firebase-iid_client=20.0.2
|
||||
firebase-iid_client=20.2.0
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
version=16.0.0
|
||||
client=firebase-installations-interop
|
||||
firebase-installations-interop_client=16.0.0
|
3
com.discord/unknown/firebase-installations.properties
Normal file
3
com.discord/unknown/firebase-installations.properties
Normal file
|
@ -0,0 +1,3 @@
|
|||
version=16.3.1
|
||||
client=firebase-installations
|
||||
firebase-installations_client=16.3.1
|
|
@ -1,3 +1,3 @@
|
|||
version=20.1.0
|
||||
version=20.2.0
|
||||
client=firebase-messaging
|
||||
firebase-messaging_client=20.1.0
|
||||
firebase-messaging_client=20.2.0
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=19.0.5
|
||||
version=19.0.7
|
||||
client=firebase-perf
|
||||
firebase-perf_client=19.0.5
|
||||
firebase-perf_client=19.0.7
|
||||
|
|
|
@ -15,139 +15,141 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// CONSTONANTS
|
||||
"ph" "" "" "f" // foreign
|
||||
"sh" "" "" "S" // foreign
|
||||
"kh" "" "" "x" // foreign
|
||||
// ASHKENAZIC
|
||||
|
||||
"gli" "" "" "(gli|l[italian])"
|
||||
"gni" "" "" "(gni|ni[italian+french])"
|
||||
"gn" "" "[aeou]" "(n[italian+french]|nj[italian+french]|gn)
|
||||
"gh" "" "" "g" // It + translit. from Arabic
|
||||
"dh" "" "" "d" // translit. from Arabic
|
||||
"bh" "" "" "d" // translit. from Arabic
|
||||
"th" "" "" "t" // translit. from Arabic
|
||||
"lh" "" "" "l" // Port
|
||||
"nh" "" "" "nj" // Port
|
||||
// A, E, I, O, P, U should create variants, but a, e, i, o, u should not create any new variant
|
||||
// Q = ü ; Y = ä = ö
|
||||
// H = initial "H" in German/English
|
||||
|
||||
"ig" "[aeiou]" "" "(ig|tS[spanish])"
|
||||
"ix" "[aeiou]" "" "S" // Sp
|
||||
"tx" "" "" "tS" // Sp
|
||||
"tj" "" "$" "tS" // Sp
|
||||
"tj" "" "" "dZ" // Sp
|
||||
"tg" "" "" "(tg|dZ[spanish])"
|
||||
// CONSONANTS
|
||||
"b" "" "" "(b|v[spanish])"
|
||||
"J" "" "" "z" // Argentina Spanish: "ll" = /Z/, but approximately /Z/ = /z/
|
||||
|
||||
// VOWELS
|
||||
// "ALL" DIPHTHONGS are interchangeable BETWEEN THEM and with monophthongs of which they are composed ("D" means "diphthong")
|
||||
// {a,o} are totally interchangeable if non-stressed; in German "a/o" can actually be from "ä/ö" (that are equivalent to "e")
|
||||
// {i,e} are interchangeable if non-stressed, while in German "u" can actually be from "ü" (that is equivalent to "i")
|
||||
|
||||
"aiB" "" "[bp]" "(D|Dm)"
|
||||
"AiB" "" "[bp]" "(D|Dm)"
|
||||
"oiB" "" "[bp]" "(D|Dm)"
|
||||
"OiB" "" "[bp]" "(D|Dm)"
|
||||
"uiB" "" "[bp]" "(D|Dm)"
|
||||
"UiB" "" "[bp]" "(D|Dm)"
|
||||
"eiB" "" "[bp]" "(D|Dm)"
|
||||
"EiB" "" "[bp]" "(D|Dm)"
|
||||
"iiB" "" "[bp]" "(D|Dm)"
|
||||
"IiB" "" "[bp]" "(D|Dm)"
|
||||
|
||||
"aiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"AiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"oiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"OiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"uiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"UiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"eiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"EiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"iiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
"IiB" "" "[dgkstvz]" "(D|Dn)"
|
||||
|
||||
"B" "" "[bp]" "(o|om[polish]|im[polish])"
|
||||
"B" "" "[dgkstvz]" "(a|o|on[polish]|in[polish])"
|
||||
"B" "" "" "(a|o)"
|
||||
|
||||
"aiF" "" "[bp]" "(D|Dm)"
|
||||
"AiF" "" "[bp]" "(D|Dm)"
|
||||
"oiF" "" "[bp]" "(D|Dm)"
|
||||
"OiF" "" "[bp]" "(D|Dm)"
|
||||
"uiF" "" "[bp]" "(D|Dm)"
|
||||
"UiF" "" "[bp]" "(D|Dm)"
|
||||
"eiF" "" "[bp]" "(D|Dm)"
|
||||
"EiF" "" "[bp]" "(D|Dm)"
|
||||
"iiF" "" "[bp]" "(D|Dm)"
|
||||
"IiF" "" "[bp]" "(D|Dm)"
|
||||
|
||||
"aiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"AiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"oiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"OiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"uiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"UiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"eiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"EiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"iiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
"IiF" "" "[dgkstvz]" "(D|Dn)"
|
||||
|
||||
"F" "" "[bp]" "(i|im[polish]|om[polish])"
|
||||
"F" "" "[dgkstvz]" "(i|in[polish]|on[polish])"
|
||||
"F" "" "" "i"
|
||||
|
||||
"P" "" "" "(o|u)"
|
||||
|
||||
"I" "[aeiouAEIBFOUQY]" "" "i"
|
||||
"I" "" "[^aeiouAEBFIOU]e" "(Q[german]|i|D[english])" // "line"
|
||||
"I" "" "$" "i"
|
||||
"I" "" "[^k]$" "i"
|
||||
"Ik" "[lr]" "$" "(ik|Qk[german])"
|
||||
"Ik" "" "$" "ik"
|
||||
"sIts" "" "$" "(sits|sQts[german])"
|
||||
"Its" "" "$" "its"
|
||||
"I" "" "" "(Q[german]|i)"
|
||||
|
||||
"lE" "[bdfgkmnprsStvzZ]" "$" "(li|il[english])" // Apple < Appel
|
||||
"lE" "[bdfgkmnprsStvzZ]" "" "(li|il[english]|lY[german])" // Applebaum < Appelbaum
|
||||
|
||||
"au" "" "" "(D|a|u)"
|
||||
"ou" "" "" "(D|o|u)"
|
||||
|
||||
"ai" "" "" "(D|a|i)"
|
||||
"Ai" "" "" "(D|a|i)"
|
||||
"oi" "" "" "(D|o|i)"
|
||||
"Oi" "" "" "(D|o|i)"
|
||||
"ui" "" "" "(D|u|i)"
|
||||
"Ui" "" "" "(D|u|i)"
|
||||
"ei" "" "" "(D|i)"
|
||||
"Ei" "" "" "(D|i)"
|
||||
|
||||
"iA" "" "$" "(ia|io)"
|
||||
"iA" "" "" "(ia|io|iY[german])"
|
||||
"A" "" "[^aeiouAEBFIOU]e" "(a|o|Y[german]|D[english])" // "plane"
|
||||
|
||||
"E" "i[^aeiouAEIOU]" "" "(i|Y[german]|[english])" // Wineberg (vineberg/vajneberg) --> vajnberg
|
||||
"E" "a[^aeiouAEIOU]" "" "(i|Y[german]|[english])" // Shaneberg (shaneberg/shejneberg) --> shejnberg
|
||||
|
||||
"e" "" "[fklmnprstv]$" "i"
|
||||
"e" "" "ts$" "i"
|
||||
"e" "" "$" "i"
|
||||
"e" "[DaoiuAOIUQY]" "" "i"
|
||||
"e" "" "[aoAOQY]" "i"
|
||||
"e" "" "" "(i|Y[german])"
|
||||
|
||||
"E" "" "[fklmnprst]$" "i"
|
||||
"E" "" "ts$" "i"
|
||||
"E" "" "$" "i"
|
||||
"E" "[DaoiuAOIUQY]" "" "i"
|
||||
"E" "" "[aoAOQY]" "i"
|
||||
"E" "" "" "(i|Y[german])"
|
||||
|
||||
"a" "" "" "(a|o)"
|
||||
|
||||
"O" "" "[fklmnprstv]$" "o"
|
||||
"O" "" "ts$" "o"
|
||||
"O" "" "$" "o"
|
||||
"O" "[oeiuQY]" "" "o"
|
||||
"O" "" "" "(o|Y[german])"
|
||||
|
||||
"A" "" "[fklmnprst]$" "(a|o)"
|
||||
"A" "" "ts$" "(a|o)"
|
||||
"A" "" "$" "(a|o)"
|
||||
"A" "[oeiuQY]" "" "(a|o)"
|
||||
"A" "" "" "(a|o|Y[german])"
|
||||
|
||||
"gi" "" "[aeou]" "dZ" // Italian
|
||||
"g" "" "y" "Z" // French
|
||||
"gg" "" "[ei]" "(gZ[portuguese+french]|dZ[italian+spanish]|x[spanish])"
|
||||
"g" "" "[ei]" "(Z[portuguese+french]|dZ[italian+spanish]|x[spanish])"
|
||||
|
||||
"guy" "" "" "gi"
|
||||
"gue" "" "$" "(k[french]|ge)"
|
||||
"gu" "" "[ei]" "(g|gv") // not It
|
||||
"gu" "" "[ao]" "gv" // not It
|
||||
|
||||
"ñ" "" "" "(n|nj)"
|
||||
"ny" "" "" "nj"
|
||||
|
||||
"sc" "" "[ei]" "(s|S[italian])"
|
||||
"sç" "" "[aeiou]" "s" // not It
|
||||
"ss" "" "" "s"
|
||||
"ç" "" "" "s" // not It
|
||||
|
||||
"ch" "" "[ei]" "(k[italian]|S[portuguese+french]|tS[spanish]|dZ[spanish])"
|
||||
"ch" "" "" "(S|tS[spanish]|dZ[spanish])"
|
||||
|
||||
"ci" "" "[aeou]" "(tS[italian]|si)"
|
||||
"cc" "" "[eiyéèê]" "(tS[italian]|ks[portuguese+french+spanish])"
|
||||
"c" "" "[eiyéèê]" "(tS[italian]|s[portuguese+french+spanish])"
|
||||
//array("c" "" "[aou]" "(k|C[".($portuguese+$spanish)."])" // "C" means that the actual letter could be "ç" (cedille omitted)
|
||||
|
||||
"s" "^" "" "s"
|
||||
"s" "[aáuiíoóeéêy]" "[aáuiíoóeéêy]" "(s[spanish]|z[portuguese+french+italian])"
|
||||
"s" "" "[dglmnrv]" "(z|Z[portuguese])"
|
||||
|
||||
"z" "" "$" "(s|ts[italian]|S[portuguese])" // ts It, s/S/Z Port, s in Sp, z Fr
|
||||
"z" "" "[bdgv]" "(z|dz[italian]|Z[portuguese])" // dz It, Z/z Port, z Sp & Fr
|
||||
"z" "" "[ptckf]" "(s|ts[italian]|S[portuguese])" // ts It, s/S/z Port, z/s Sp
|
||||
"z" "" "" "(z|dz[italian]|ts[italian]|s[spanish])" // ts/dz It, z Port & Fr, z/s Sp
|
||||
|
||||
"que" "" "$" "(k[french]|ke)"
|
||||
"qu" "" "[eiu]" "k"
|
||||
"qu" "" "[ao]" "(kv|k)" // k is It
|
||||
|
||||
"ex" "" "[aáuiíoóeéêy]" "(ez[portuguese]|eS[portuguese]|eks|egz)"
|
||||
"ex" "" "[cs]" "(e[portuguese]|ek)"
|
||||
|
||||
"m" "" "[cdglnrst]" "(m|n[portuguese])"
|
||||
"m" "" "[bfpv]" "(m|n[portuguese+spanish])"
|
||||
"m" "" "$" "(m|n[portuguese])"
|
||||
|
||||
"b" "^" "" "(b|V[spanish])"
|
||||
"v" "^" "" "(v|B[spanish])"
|
||||
|
||||
// VOWELS
|
||||
"eau" "" "" "o" // Fr
|
||||
|
||||
"ouh" "" "[aioe]" "(v[french]|uh)"
|
||||
"uh" "" "[aioe]" "(v|uh)"
|
||||
"ou" "" "[aioe]" "v" // french
|
||||
"uo" "" "" "(vo|o)"
|
||||
"u" "" "[aie]" "v"
|
||||
|
||||
"i" "[aáuoóeéê]" "" "j"
|
||||
"i" "" "[aeou]" "j"
|
||||
"y" "[aáuiíoóeéê]" "" "j"
|
||||
"y" "" "[aeiíou]" "j"
|
||||
"e" "" "$" "(e|E[$french])"
|
||||
|
||||
"ão" "" "" "(au|an)" // Port
|
||||
"ãe" "" "" "(aj|an)" // Port
|
||||
"ãi" "" "" "(aj|an)" // Port
|
||||
"õe" "" "" "(oj|on)" // Port
|
||||
"où" "" "" "u" // Fr
|
||||
"ou" "" "" "(ou|u[french])"
|
||||
|
||||
"â" "" "" "a" // Port & Fr
|
||||
"à" "" "" "a" // Port
|
||||
"á" "" "" "a" // Port & Sp
|
||||
"ã" "" "" "(a|an)" // Port
|
||||
"é" "" "" "e"
|
||||
"ê" "" "" "e" // Port & Fr
|
||||
"è" "" "" "e" // Sp & Fr & It
|
||||
"í" "" "" "i" // Port & Sp
|
||||
"î" "" "" "i" // Fr
|
||||
"ô" "" "" "o" // Port & Fr
|
||||
"ó" "" "" "o" // Port & Sp & It
|
||||
"õ" "" "" "(o|on)" // Port
|
||||
"ò" "" "" "o" // Sp & It
|
||||
"ú" "" "" "u" // Port & Sp
|
||||
"ü" "" "" "u" // Port & Sp
|
||||
|
||||
// LATIN ALPHABET
|
||||
"a" "" "" "a"
|
||||
"b" "" "" "(b|v[spanish])"
|
||||
"c" "" "" "k"
|
||||
"d" "" "" "d"
|
||||
"e" "" "" "e"
|
||||
"f" "" "" "f"
|
||||
"g" "" "" "g"
|
||||
"h" "" "" "h"
|
||||
"i" "" "" "i"
|
||||
"j" "" "" "(x[spanish]|Z)" // not It
|
||||
"k" "" "" "k"
|
||||
"l" "" "" "l"
|
||||
"m" "" "" "m"
|
||||
"n" "" "" "n"
|
||||
"o" "" "" "o"
|
||||
"p" "" "" "p"
|
||||
"q" "" "" "k"
|
||||
"r" "" "" "r"
|
||||
"s" "" "" "(s|S[portuguese])"
|
||||
"t" "" "" "t"
|
||||
"u" "" "" "u"
|
||||
"v" "" "" "(v|b[spanish])"
|
||||
"w" "" "" "v" // foreign
|
||||
"x" "" "" "(ks|gz|S[portuguese+spanish])" // S/ks Port & Sp, gz Sp, It only ks
|
||||
"y" "" "" "i"
|
||||
"z" "" "" "z"
|
||||
"U" "" "$" "u"
|
||||
"U" "[DoiuQY]" "" "u"
|
||||
"U" "" "[^k]$" "u"
|
||||
"Uk" "[lr]" "$" "(uk|Qk[german])"
|
||||
"Uk" "" "$" "uk"
|
||||
|
||||
"sUts" "" "$" "(suts|sQts[german])"
|
||||
"Uts" "" "$" "uts"
|
||||
"U" "" "" "(u|Q[german])"
|
||||
|
|
|
@ -201,7 +201,13 @@
|
|||
"lEndEr" "" "$" "lYnder"
|
||||
"lendEr" "" "$" "lYnder"
|
||||
"lEnder" "" "$" "lYnder"
|
||||
|
||||
|
||||
// burg = berg
|
||||
"bUrk" "" "$" "(burk|berk)"
|
||||
"burk" "" "$" "(burk|berk)"
|
||||
"bUrg" "" "$" "(burk|berk)"
|
||||
"burg" "" "$" "(burk|berk)"
|
||||
|
||||
// CONSONANTS {z & Z; s & S} are approximately interchangeable
|
||||
"s" "" "[rmnl]" "z"
|
||||
"S" "" "[rmnl]" "z"
|
||||
|
|
|
@ -16,4 +16,4 @@
|
|||
*/
|
||||
|
||||
"E" "" "" "e"
|
||||
"I "" "" "i"
|
||||
"I" "" "" "i"
|
|
@ -24,6 +24,7 @@
|
|||
"b" "^" "" "b"
|
||||
"b" "" "" "(b|v)"
|
||||
|
||||
"J" "" "" "l"
|
||||
"ja" "" "" "i"
|
||||
"jA" "" "" "i"
|
||||
"jB" "" "" "i"
|
||||
|
@ -75,17 +76,20 @@
|
|||
"ou" "^" "" "(u|v|1)"
|
||||
"o" "^" "" "(u|v|1)"
|
||||
"O" "^" "" "(u|v|1)"
|
||||
"P" "^" "" "(u|v|1)"
|
||||
"U" "^" "" "(u|v|1)"
|
||||
"u" "^" "" "(u|v|1)"
|
||||
|
||||
"o" "" "$" "(u|1)"
|
||||
"O" "" "$" "(u|1)"
|
||||
"P" "" "$" "(u|1)"
|
||||
"u" "" "$" "(u|1)"
|
||||
"U" "" "$" "(u|1)"
|
||||
|
||||
"ou" "" "" "u"
|
||||
"o" "" "" "u"
|
||||
"O" "" "" "u"
|
||||
"P" "" "" "u"
|
||||
"U" "" "" "u"
|
||||
|
||||
"VV" "" "" "u" // alef/ayin + vov from ruleshebrew
|
||||
|
@ -102,8 +106,9 @@
|
|||
//"z" "" "" "(z|Z)"
|
||||
//"d" "" "" "(d|dZ)"
|
||||
|
||||
"TB" "" "$" "(t|s)" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "" "" "t" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "^" "" "t" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "" "$" "s" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "" "" "(t|s)" // tav from ruleshebrew; only Ashkenazic
|
||||
"T" "" "" "t" // tet from ruleshebrew
|
||||
|
||||
//"k" "" "" "(k|x)"
|
||||
|
|
|
@ -0,0 +1,206 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// ASHKENAZIC
|
||||
|
||||
// 1. following are rules to accept the language
|
||||
// 1.1 Special letter combinations
|
||||
zh polish+russian+german+english true
|
||||
eau french true
|
||||
[aoeiuäöü]h german true
|
||||
^vogel german, true
|
||||
vogel$ german true
|
||||
witz german true
|
||||
tz$ german+russian+english true
|
||||
^tz russian+english true
|
||||
güe spanish true
|
||||
güi spanish true
|
||||
ghe romanian true
|
||||
ghi romanian true
|
||||
vici$ romanian true
|
||||
schi$ romanian true
|
||||
chsch german true
|
||||
tsch german true
|
||||
ssch german true
|
||||
sch$ german+russian true
|
||||
^sch german+russian true
|
||||
^rz polish true
|
||||
rz$ polish+german true
|
||||
[^aoeiuäöü]rz polish true
|
||||
rz[^aoeiuäöü] polish true
|
||||
cki$ polish true
|
||||
ska$ polish true
|
||||
cka$ polish true
|
||||
ue german+russian true
|
||||
ae german+russian+english true
|
||||
oe german+french+russian+english true
|
||||
th$ german true
|
||||
^th german true
|
||||
th[^aoeiu] german true
|
||||
mann german true
|
||||
cz polish true
|
||||
cy polish true
|
||||
niew polish true
|
||||
stein german true
|
||||
heim$ german true
|
||||
heimer$ german true
|
||||
ii$ russian true
|
||||
iy$ russian true
|
||||
yy$ russian true
|
||||
yi$ russian true
|
||||
yj$ russian true
|
||||
ij$ russian true
|
||||
gaus$ russian true
|
||||
gauz$ russian true
|
||||
gauz$ russian true
|
||||
goltz$ russian true
|
||||
gol'tz$ russian true
|
||||
golts$ russian true
|
||||
gol'ts$ russian true
|
||||
^goltz russian true
|
||||
^gol'tz russian true
|
||||
^golts russian true
|
||||
^gol'ts russian true
|
||||
gendler$ russian true
|
||||
gejmer$ russian true
|
||||
gejm$ russian true
|
||||
geimer$ russian true
|
||||
geim$ russian true
|
||||
geymer russian true
|
||||
geym$ russian true
|
||||
gof$ russian true
|
||||
thal german true
|
||||
zweig german true
|
||||
ck$ german+english true
|
||||
c$ polish+romanian+hungarian true
|
||||
sz polish+hungarian true
|
||||
gue spanish+french true
|
||||
gui spanish+french true
|
||||
guy french true
|
||||
cs$ hungarian true
|
||||
^cs hungarian true
|
||||
dzs hungarian true
|
||||
zs$ hungarian true
|
||||
^zs hungarian true
|
||||
^wl polish true
|
||||
^wr polish+english+german true
|
||||
|
||||
gy$ hungarian true
|
||||
gy[aeou] hungarian true
|
||||
gy hungarian+russian true
|
||||
ly hungarian+russian+polish true
|
||||
ny hungarian+russian+polish true
|
||||
ty hungarian+russian+polish true
|
||||
|
||||
// 1.2 special characters
|
||||
â romanian+french true
|
||||
ă romanian true
|
||||
à french true
|
||||
ä german true
|
||||
á hungarian+spanish true
|
||||
ą polish true
|
||||
ć polish true
|
||||
ç french true
|
||||
ę polish true
|
||||
é french+hungarian+spanish true
|
||||
è french true
|
||||
ê french true
|
||||
í hungarian+spanish true
|
||||
î romanian+french true
|
||||
ł polish true
|
||||
ń polish true
|
||||
ñ spanish true
|
||||
ó polish+hungarian+spanish true
|
||||
ö german+hungarian true
|
||||
õ hungarian true
|
||||
ş romanian true
|
||||
ś polish true
|
||||
ţ romanian true
|
||||
ü german+hungarian true
|
||||
ù french true
|
||||
ű hungarian true
|
||||
ú hungarian+spanish true
|
||||
ź polish true
|
||||
ż polish true
|
||||
|
||||
ß german true
|
||||
|
||||
// Every Cyrillic word has at least one Cyrillic vowel (аёеоиуыэюя)
|
||||
а cyrillic true
|
||||
ё cyrillic true
|
||||
о cyrillic true
|
||||
е cyrillic true
|
||||
и cyrillic true
|
||||
у cyrillic true
|
||||
ы cyrillic true
|
||||
э cyrillic true
|
||||
ю cyrillic true
|
||||
я cyrillic true
|
||||
|
||||
// Hebrew
|
||||
א hebrew true
|
||||
ב hebrew true
|
||||
ג ebrew true
|
||||
ד hebrew true
|
||||
ה hebrew true
|
||||
ו hebrew true
|
||||
ז hebrew true
|
||||
ח hebrew true
|
||||
ט hebrew true
|
||||
י hebrew true
|
||||
כ hebrew true
|
||||
ל hebrew true
|
||||
מ hebrew true
|
||||
נ hebrew true
|
||||
ס hebrew true
|
||||
ע hebrew true
|
||||
פ hebrew true
|
||||
צ hebrew true
|
||||
ק hebrew true
|
||||
ר hebrew true
|
||||
ש hebrew true
|
||||
ת hebrew true
|
||||
|
||||
|
||||
// 2. following are rules to reject the language
|
||||
// Every Latin character word has at least one Latin vowel
|
||||
a cyrillic+hebrew false
|
||||
o cyrillic+hebrew false
|
||||
e cyrillic+hebrew false
|
||||
i cyrillic+hebrew false
|
||||
y cyrillic+hebrew+romanian false
|
||||
u cyrillic+hebrew false
|
||||
|
||||
v[^aoeiuäüö] german false // in german "v" can be found before a vowel only
|
||||
y[^aoeiu] german false // in german "y" usually appears only in the last position; sometimes before a vowel
|
||||
c[^aohk] german false
|
||||
dzi german+english+french false
|
||||
ou german false
|
||||
aj german+english+french false
|
||||
ej german+english+french false
|
||||
oj german+english+french false
|
||||
uj german+english+french false
|
||||
k romanian false
|
||||
v polish false
|
||||
ky polish false
|
||||
eu russian+polish false
|
||||
w french+romanian+spanish+hungarian+russian false
|
||||
kie french+spanish false
|
||||
gie french+romanian+spanish false
|
||||
q hungarian+polish+russian+romanian false
|
||||
sch hungarian+polish+french+spanish false
|
||||
^h russian false
|
|
@ -55,11 +55,11 @@
|
|||
"sh" "" "[äöü]" "sh" // german
|
||||
"sh" "" "[aeiou]" "(S[russian+english]|sh)"
|
||||
"sh" "" "" "S" // russian+english
|
||||
|
||||
|
||||
"kh" "" "" "(x[russian+english]|kh)"
|
||||
|
||||
|
||||
"chs" "" "" "(ks[german]|xs|tSs[russian+english])"
|
||||
|
||||
|
||||
// French "ch" is currently disabled
|
||||
//array("ch" "" "[ei]" "(x|tS|k[romanian]|S[french])"
|
||||
//array("ch" "" "" "(x|tS[russian+english]|S[french])"
|
||||
|
@ -84,7 +84,7 @@
|
|||
"cz" "" "" "tS" // Polish
|
||||
|
||||
"cia" "" "[bcdgkpstwzż]" "(tSB[polish]|tsB)"
|
||||
"cia" "" "" "(tSa[$polish]|tsa)"
|
||||
"cia" "" "" "(tSa[polish]|tsa)"
|
||||
"cią" "" "[bp]" "(tSom[polish]|tsom)"
|
||||
"cią" "" "" "(tSon[polish]|tson)"
|
||||
"cię" "" "[bp]" "(tSem[polish]|tsem)"
|
||||
|
@ -212,8 +212,8 @@
|
|||
"v" "^" "" "(v|f[german])"
|
||||
|
||||
"h" "[aeiouyäöü]" "" "" //german
|
||||
"h" "" "" "(h|x[".(romanian+polish)."])"
|
||||
"h" "^" "" "(h|H[".(english+german)."])" // H can be exact "h" or approximate "kh"
|
||||
"h" "" "" "(h|x[romanian+polish])"
|
||||
"h" "^" "" "(h|H[english+german])" // H can be exact "h" or approximate "kh"
|
||||
|
||||
// VOWELS
|
||||
"yi" "^" "" "i"
|
||||
|
@ -275,7 +275,7 @@
|
|||
|
||||
"ą" "" "[bp]" "om" // polish
|
||||
"ą" "" "" "on" // polish
|
||||
"ä" "" "" "Y" // german
|
||||
"ä" "" "" "(Y|e)" // german
|
||||
"á" "" "" "a" // hungarian
|
||||
"ă" "" "" "(e[romanian]|a)" //romanian
|
||||
"à" "" "" "a" // french
|
||||
|
|
|
@ -81,7 +81,7 @@
|
|||
"ae" "" "" "Y"
|
||||
"oe" "" "" "Y"
|
||||
"ü" "" "" "Q"
|
||||
"ä" "" "" "Y"
|
||||
"ä" "" "" "(Y|e)"
|
||||
"ö" "" "" "Y"
|
||||
"ei" "" "" "aj"
|
||||
"ey" "" "" "aj"
|
||||
|
|
|
@ -29,6 +29,12 @@
|
|||
"mp" "" "" "(mp|b[greeklatin])"
|
||||
"ng" "" "" "(ng|g[greeklatin])"
|
||||
|
||||
"B" "" "[fktSs]" "(p|f[spanish])"
|
||||
"B" "" "p" ""
|
||||
"B" "" "$" "(p|f[spanish])"
|
||||
"V" "" "[pktSs]" "(f|p[spanish])"
|
||||
"V" "" "f" ""
|
||||
"V" "" "$" "(f|p[spanish])"
|
||||
"B" "" "" "(b|v[spanish])"
|
||||
"V" "" "" "(v|b[spanish])"
|
||||
|
||||
|
@ -41,7 +47,7 @@
|
|||
"s" "" "$" "(s|[french])"
|
||||
"t" "[aeiouAEIOU]" "[^aeiouAEIOU]" "(t|[french])" // Petitjean
|
||||
"s" "[aeiouAEIOU]" "[^aeiouAEIOU]" "(s|[french])" // Groslot, Grosleau
|
||||
//array("p" "[aeiouAEIOU]" "[^aeiouAEIOU]" "(p|[$french])"
|
||||
//array("p" "[aeiouAEIOU]" "[^aeiouAEIOU]" "(p|[french])"
|
||||
|
||||
"I" "[aeiouAEIBFOUQY]" "" "i"
|
||||
"I" "" "[^aeiouAEBFIOU]e" "(Q[german]|i|D[english])" // "line"
|
||||
|
@ -58,6 +64,7 @@
|
|||
"lE" "[bdfgkmnprsStvzZ]" "" "(li|il[english]|lY[german])" // Applebaum < Appelbaum
|
||||
"rE" "[bdfgkmnprsStvzZ]" "" "(ri|ir[english]|rY[german])"
|
||||
|
||||
"EE" "" "" "(i|)"
|
||||
"ea" "" "" "(D|a|i)"
|
||||
|
||||
"au" "" "" "(D|a|u)"
|
||||
|
@ -86,7 +93,7 @@
|
|||
"E" "" "$" "i"
|
||||
"E" "[DaoiuAOIUQY]" "" "i"
|
||||
"E" "" "[aoAOQY]" "i"
|
||||
"E" "" "" "(i|Y[$german])"
|
||||
"E" "" "" "(i|Y[german])"
|
||||
|
||||
"P" "" "" "(o|u)"
|
||||
|
||||
|
@ -94,14 +101,14 @@
|
|||
"O" "" "ts$" "o"
|
||||
"O" "" "$" "o"
|
||||
"O" "[oeiuQY]" "" "o"
|
||||
"O" "" "" "(o|Y[$german])"
|
||||
"O" "" "" "(o|Y[german])"
|
||||
"O" "" "" "o"
|
||||
|
||||
"A" "" "[fklmnprst]$" "(a|o)"
|
||||
"A" "" "ts$" "(a|o)"
|
||||
"A" "" "$" "(a|o)"
|
||||
"A" "[oeiuQY]" "" "(a|o)"
|
||||
"A" "" "" "(a|o|Y[$german])"
|
||||
"A" "" "" "(a|o|Y[german])"
|
||||
"A" "" "" "(a|o)"
|
||||
|
||||
"U" "" "$" "u"
|
||||
|
|
|
@ -15,6 +15,9 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
"1a" "" "" "(D|a)"
|
||||
"1i" "" "" "(D|i|e)"
|
||||
"1u" "" "" "(D|u|o)"
|
||||
"j1" "" "" "(ja|je|jo|ju|j)"
|
||||
"1" "" "" "(a|e|i|o|u|)"
|
||||
"u" "" "" "(o|u)"
|
||||
|
|
|
@ -37,19 +37,19 @@
|
|||
"sEn" "[rmnl]" "$" "(zn|zon)"
|
||||
"sEn" "" "$" "(sn|son)"
|
||||
|
||||
"e" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"i" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"E" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"I" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"Q" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"Y" "[bdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"e" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"i" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"E" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"I" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"Q" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
"Y" "[BbdfgklmnprsStvzZ]" "[ln]$" ""
|
||||
|
||||
"e" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"i" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"E" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"I" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"Q" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"Y" "[bdfgklmnprsStvzZ]" "[ln][bdfgklmnprsStvzZ]" ""
|
||||
"e" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
"i" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
"E" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
"I" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
"Q" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
"Y" "[BbdfgklmnprsStvzZ]" "[ln][BbdfgklmnprsStvzZ]" ""
|
||||
|
||||
"lEs" "" "" "(lEs|lz)" // Applebaum < Appelbaum (English + blend English-something forms as Finklestein)
|
||||
"lE" "[bdfgkmnprStvzZ]" "" "(lE|l)" // Applebaum < Appelbaum (English + blend English-something forms as Finklestein)
|
||||
|
@ -205,7 +205,17 @@
|
|||
"lEndEr" "" "$" "lYnder"
|
||||
"lendEr" "" "$" "lYnder"
|
||||
"lEnder" "" "$" "lYnder"
|
||||
|
||||
|
||||
// burg = berg
|
||||
"burk" "" "$" "(burk|berk)"
|
||||
"bUrk" "" "$" "(burk|berk)"
|
||||
"burg" "" "$" "(burk|berk)"
|
||||
"bUrg" "" "$" "(burk|berk)"
|
||||
"Burk" "" "$" "(burk|berk)"
|
||||
"BUrk" "" "$" "(burk|berk)"
|
||||
"Burg" "" "$" "(burk|berk)"
|
||||
"BUrg" "" "$" "(burk|berk)"
|
||||
|
||||
// CONSONANTS {z & Z; s & S} are approximately interchangeable
|
||||
"s" "" "[rmnl]" "z"
|
||||
"S" "" "[rmnl]" "z"
|
||||
|
|
|
@ -28,6 +28,13 @@
|
|||
"O" "" "" "o"
|
||||
"P" "" "" "o"
|
||||
"U" "" "" "u"
|
||||
|
||||
|
||||
"B" "" "[fktSs]" "p"
|
||||
"B" "" "p" ""
|
||||
"B" "" "$" "p"
|
||||
"V" "" "[pktSs]" "f"
|
||||
"V" "" "f" ""
|
||||
"V" "" "$" "f"
|
||||
|
||||
"B" "" "" "b"
|
||||
"V" "" "" "v"
|
||||
|
|
|
@ -15,4 +15,4 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
"l" "" "" ""
|
||||
"1" "" "" ""
|
|
@ -23,7 +23,10 @@
|
|||
"p" "" "" "f"
|
||||
"b" "^" "" "b"
|
||||
"b" "" "" "(b|v)"
|
||||
|
||||
"B" "" "" "(b|v)" // Spanish "b"
|
||||
"V" "" "" "v" // Spanish "v"
|
||||
"EE" "" "" "(1|)" // final "e" (english & french)
|
||||
|
||||
"ja" "" "" "i"
|
||||
"jA" "" "" "i"
|
||||
"je" "" "" "i"
|
||||
|
@ -64,17 +67,20 @@
|
|||
"ou" "^" "" "(u|v|1)"
|
||||
"o" "^" "" "(u|v|1)"
|
||||
"O" "^" "" "(u|v|1)"
|
||||
"P" "^" "" "(u|v|1)"
|
||||
"U" "^" "" "(u|v|1)"
|
||||
"u" "^" "" "(u|v|1)"
|
||||
|
||||
"o" "" "$" "(u|1)"
|
||||
"O" "" "$" "(u|1)"
|
||||
"P" "" "$" "(u|1)"
|
||||
"u" "" "$" "(u|1)"
|
||||
"U" "" "$" "(u|1)"
|
||||
|
||||
"ou" "" "" "u"
|
||||
"o" "" "" "u"
|
||||
"O" "" "" "u"
|
||||
"P" "" "" "u"
|
||||
"U" "" "" "u"
|
||||
|
||||
"VV" "" "" "u" // alef/ayin + vov from ruleshebrew
|
||||
|
@ -91,8 +97,8 @@
|
|||
//"z" "" "" "(z|Z)"
|
||||
//"d" "" "" "(d|dZ)"
|
||||
|
||||
"TB" "" "$" "(t|s)" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "" "" "t" // tav from ruleshebrew; only Ashkenazic
|
||||
"TB" "^" "" "t" // tav from ruleshebrew
|
||||
"TB" "" "" "(t|s)" // tav from ruleshebrew; s is only Ashkenazic
|
||||
"T" "" "" "t" // tet from ruleshebrew
|
||||
|
||||
//"k" "" "" "(k|x)"
|
||||
|
|
|
@ -0,0 +1,295 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// GENERIC
|
||||
|
||||
// 1. following are rules to accept the language
|
||||
// 1.1 Special letter combinations
|
||||
^o’ english true
|
||||
^o' english true
|
||||
^mc english true
|
||||
^fitz english true
|
||||
ceau french+romanian true
|
||||
eau romanian true
|
||||
eau$ french true // mp: I've added this
|
||||
eaux$ french true // mp: I've added this
|
||||
ault$ french true
|
||||
oult$ french true
|
||||
eux$ french true
|
||||
eix$ french true
|
||||
glou$ greeklatin true
|
||||
uu dutch true
|
||||
tx spanish true
|
||||
witz german true
|
||||
tz$ german+russian+english true
|
||||
^tz russian+english true
|
||||
poulos$ greeklatin true
|
||||
pulos$ greeklatin true
|
||||
iou greeklatin true
|
||||
sj$ dutch true
|
||||
^sj dutch true
|
||||
güe spanish true
|
||||
güi spanish true
|
||||
ghe romanian+greeklatin true
|
||||
ghi romanian+greeklatin true
|
||||
escu$ romanian true
|
||||
esco$ romanian true
|
||||
vici$ romanian true
|
||||
schi$ romanian true
|
||||
ii$ russian true
|
||||
iy$ russian true
|
||||
yy$ russian true
|
||||
yi$ russian true
|
||||
^rz polish true
|
||||
rz$ polish+german true
|
||||
[bcdfgklmnpstwz]rz polish true
|
||||
rz[bcdfghklmnpstw] polish true
|
||||
cki$ polish true
|
||||
ska$ polish true
|
||||
cka$ polish true
|
||||
ae german+russian+english true
|
||||
oe german+french+russian+english+dutch true
|
||||
th$ german+english true
|
||||
^th german+english+greeklatin true
|
||||
mann german true
|
||||
cz polish true
|
||||
cy polish+greeklatin true
|
||||
niew polish true
|
||||
etti$ italian true
|
||||
eti$ italian true
|
||||
ati$ italian true
|
||||
ato$ italian true
|
||||
[aoei]no$ italian true
|
||||
[aoei]ni$ italian true
|
||||
esi$ italian true
|
||||
oli$ italian true
|
||||
field$ english true
|
||||
stein german true
|
||||
heim$ german true
|
||||
heimer$ german true
|
||||
thal german true
|
||||
zweig german true
|
||||
[aeou]h german true
|
||||
äh german true
|
||||
öh german true
|
||||
üh german true
|
||||
[ln]h[ao]$ portuguese true
|
||||
[ln]h[aou] portuguese+french+german+dutch+czech+spanish+turkish true
|
||||
chsch german true
|
||||
tsch german true
|
||||
sch$ german+russian true
|
||||
^sch german+russian true
|
||||
ck$ german+english true
|
||||
c$ polish+romanian+hungarian+czech+turkish true
|
||||
sz polish+hungarian true
|
||||
cs$ hungarian true
|
||||
^cs hungarian true
|
||||
dzs hungarian true
|
||||
zs$ hungarian true
|
||||
^zs hungarian true
|
||||
^wl polish true
|
||||
^wr polish+english+german+dutch true
|
||||
|
||||
gy$ hungarian true
|
||||
gy[aeou] hungarian true
|
||||
gy hungarian+russian+french+greeklatin true
|
||||
guy french true
|
||||
gu[ei] spanish+french+portuguese true
|
||||
gu[ao] spanish+portuguese true
|
||||
gi[aou] italian+greeklatin true
|
||||
|
||||
ly hungarian+russian+polish+greeklatin true
|
||||
ny hungarian+russian+polish+spanish+greeklatin true
|
||||
ty hungarian+russian+polish+greeklatin true
|
||||
|
||||
// 1.2 special characters
|
||||
ć polish true
|
||||
ç french+spanish+portuguese+turkish true
|
||||
č czech true
|
||||
ď czech true
|
||||
ğ turkish true
|
||||
ł polish true
|
||||
ń polish true
|
||||
ñ spanish true
|
||||
ň czech true
|
||||
ř czech true
|
||||
ś polish true
|
||||
ş romanian+turkish true
|
||||
š czech true
|
||||
ţ romanian true
|
||||
ť czech true
|
||||
ź polish true
|
||||
ż polish true
|
||||
|
||||
ß german true
|
||||
|
||||
ä german true
|
||||
á hungarian+spanish+portuguese+czech+greeklatin true
|
||||
â romanian+french+portuguese true
|
||||
ă romanian true
|
||||
ą polish true
|
||||
à portuguese true
|
||||
ã portuguese true
|
||||
ę polish true
|
||||
é french+hungarian+czech+greeklatin true
|
||||
è french+spanish+italian true
|
||||
ê french true
|
||||
ě czech true
|
||||
ê french+portuguese true
|
||||
í hungarian+spanish+portuguese+czech+greeklatin true
|
||||
î romanian+french true
|
||||
ı turkish true
|
||||
ó polish+hungarian+spanish+italian+portuguese+czech+greeklatin true
|
||||
ö german+hungarian+turkish true
|
||||
ô french+portuguese true
|
||||
õ portuguese+hungarian true
|
||||
ò italian+spanish true
|
||||
ű hungarian true
|
||||
ú hungarian+spanish+portuguese+czech+greeklatin true
|
||||
ü german+hungarian+spanish+portuguese+turkish true
|
||||
ù french true
|
||||
ů czech true
|
||||
ý czech+greeklatin true
|
||||
|
||||
// Every Cyrillic word has at least one Cyrillic vowel (аёеоиуыэюя)
|
||||
а cyrillic true
|
||||
ё cyrillic true
|
||||
о cyrillic true
|
||||
е cyrillic true
|
||||
и cyrillic true
|
||||
у cyrillic true
|
||||
ы cyrillic true
|
||||
э cyrillic true
|
||||
ю cyrillic true
|
||||
я cyrillic true
|
||||
|
||||
// Every Greek word has at least one Greek vowel
|
||||
α greek true
|
||||
ε greek true
|
||||
η greek true
|
||||
ι greek true
|
||||
ο greek true
|
||||
υ greek true
|
||||
ω greek true
|
||||
|
||||
// Arabic (only initial)
|
||||
ا arabic true // alif (isol + init)
|
||||
ب arabic true // ba'
|
||||
ت arabic true // ta'
|
||||
ث arabic true // tha'
|
||||
ج arabic true // jim
|
||||
ح arabic true // h.a'
|
||||
خ' arabic true // kha'
|
||||
د arabic true // dal (isol + init)
|
||||
ذ arabic true // dhal (isol + init)
|
||||
ر arabic true // ra' (isol + init)
|
||||
ز arabic true // za' (isol + init)
|
||||
س arabic true // sin
|
||||
ش arabic true // shin
|
||||
ص arabic true // s.ad
|
||||
ض arabic true // d.ad
|
||||
ط arabic true // t.a'
|
||||
ظ arabic true // z.a'
|
||||
ع arabic true // 'ayn
|
||||
غ arabic true // ghayn
|
||||
ف arabic true // fa'
|
||||
ق arabic true // qaf
|
||||
ك arabic true // kaf
|
||||
ل arabic true // lam
|
||||
م arabic true // mim
|
||||
ن arabic true // nun
|
||||
ه arabic true // ha'
|
||||
و arabic true // waw (isol + init)
|
||||
ي arabic true // ya'
|
||||
|
||||
آ arabic true // alif madda
|
||||
إ arabic true // alif + diacritic
|
||||
أ arabic true // alif + hamza
|
||||
ؤ arabic true // waw + hamza
|
||||
ئ arabic true // ya' + hamza
|
||||
لا arabic true // ligature l+a
|
||||
|
||||
// Hebrew
|
||||
א hebrew true
|
||||
ב hebrew true
|
||||
ג hebrew true
|
||||
ד hebrew true
|
||||
ה hebrew true
|
||||
ו hebrew true
|
||||
ז hebrew true
|
||||
ח hebrew true
|
||||
ט hebrew true
|
||||
י hebrew true
|
||||
כ hebrew true
|
||||
ל hebrew true
|
||||
מ hebrew true
|
||||
נ hebrew true
|
||||
ס hebrew true
|
||||
ע hebrew true
|
||||
פ hebrew true
|
||||
צ hebrew true
|
||||
ק hebrew true
|
||||
ר hebrew true
|
||||
ש hebrew true
|
||||
ת hebrew true
|
||||
|
||||
// 2. following are rules to reject the language
|
||||
|
||||
// Every Latin character word has at least one Latin vowel
|
||||
a cyrillic+hebrew+greek+arabic false
|
||||
o cyrillic+hebrew+greek+arabic false
|
||||
e cyrillic+hebrew+greek+arabic false
|
||||
i cyrillic+hebrew+greek+arabic false
|
||||
y cyrillic+hebrew+greek+arabic+romanian+dutch false
|
||||
u cyrillic+hebrew+greek+arabic false
|
||||
|
||||
j italian false
|
||||
j[^aoeiuy] french+spanish+portuguese+greeklatin false
|
||||
g czech false
|
||||
k romanian+spanish+portuguese+french+italian false
|
||||
q hungarian+polish+russian+romanian+czech+dutch+turkish+greeklatin false
|
||||
v polish false
|
||||
w french+romanian+spanish+hungarian+russian+czech+turkish+greeklatin false
|
||||
x czech+hungarian+dutch+turkish false // polish excluded from the list
|
||||
|
||||
dj spanish+turkish false
|
||||
v[^aoeiu] german false // in german, "v" can be found before a vowel only
|
||||
y[^aoeiu] german false // in german, "y" usually appears only in the last position; sometimes before a vowel
|
||||
c[^aohk] german false
|
||||
dzi german+english+french+turkish false
|
||||
ou german false
|
||||
a[eiou] turkish false // no diphthongs in Turkish
|
||||
ö[eaiou] turkish false
|
||||
ü[eaiou] turkish false
|
||||
e[aiou] turkish false
|
||||
i[aeou] turkish false
|
||||
o[aieu] turkish false
|
||||
u[aieo] turkish false
|
||||
aj german+english+french+dutch false
|
||||
ej german+english+french+dutch false
|
||||
oj german+english+french+dutch false
|
||||
uj german+english+french+dutch false
|
||||
eu russian+polish false
|
||||
ky polish false
|
||||
kie french+spanish+greeklatin false
|
||||
gie portuguese+romanian+spanish+greeklatin false
|
||||
ch[aou] italian false
|
||||
ch turkish false
|
||||
son$ german false
|
||||
sc[ei] french false
|
||||
sch hungarian+polish+french+spanish false
|
||||
^h russian false
|
|
@ -81,7 +81,7 @@
|
|||
"ck" "" "" "(k|tsk[polish+czech])"
|
||||
"cz" "" "" "(tS|tsz[czech])" // Polish
|
||||
|
||||
//Proceccing of "h" in various combinations
|
||||
//Processing of "h" in various combinations
|
||||
"rh" "^" "" "r"
|
||||
"dh" "^" "" "d"
|
||||
"bh" "^" "" "b"
|
||||
|
@ -124,7 +124,7 @@
|
|||
|
||||
"ouh" "" "[aioe]" "(v[french]|uh)"
|
||||
"uh" "" "[aioe]" "(v|uh)"
|
||||
"h" "." "$" "" // match h at the end of words, but not as a single letter
|
||||
"h" "." "$" "" // match h at the end of words, but not as a single letter: difference to the original version
|
||||
"h" "[aeiouyäöü]" "" "" // german
|
||||
"h" "^" "" "(h|x[romanian+greeklatin]|H[english+romanian+polish+french+portuguese+italian+spanish])"
|
||||
|
||||
|
@ -288,7 +288,7 @@
|
|||
// LANGUAGE SPECIFIC CHARACTERS
|
||||
"ą" "" "[bp]" "om" // polish
|
||||
"ą" "" "" "on" // polish
|
||||
"ä" "" "" "Y"
|
||||
"ä" "" "" "(Y|e)"
|
||||
"á" "" "" "a" // Port & Sp
|
||||
"à" "" "" "a"
|
||||
"â" "" "" "a"
|
||||
|
|
|
@ -15,60 +15,62 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
"ا" "" "" "a" // alif isol & init
|
||||
|
||||
// General
|
||||
"ا" "" "" "a" // alif isol & init
|
||||
"ب" "" "$" "b"
|
||||
"ب" "" "" "b1" // ba' isol
|
||||
|
||||
"ت" "" "$" "t"
|
||||
"ت" "" "" "t1" // ta' isol
|
||||
|
||||
"ث" "" "$" "t"
|
||||
"ث" "" "" "t1" // tha' isol
|
||||
|
||||
"ج" "" "$" "(dZ|Z)"
|
||||
"ج" "" "" "(dZ1|Z1)" // jim isol
|
||||
|
||||
"ح" "^" "" "1"
|
||||
"ح" "" "$" "1"
|
||||
"ح" "" "" "(h1|1)" // h.a' isol
|
||||
|
||||
"خ" "" "$" "x"
|
||||
"خ" "" "" "x1" // kha' isol
|
||||
|
||||
"د" "" "$" "d"
|
||||
"د" "" "" "d1" // dal isol & init
|
||||
|
||||
"ذ" "" "$" "d"
|
||||
"ذ" "" "" "d1" // dhal isol & init
|
||||
|
||||
"ر" "" "" "r1" // dhal isol & init
|
||||
|
||||
"ر" "" "$" "r"
|
||||
"ر" "" "" "r1" // ra' isol & init
|
||||
"ز" "" "$" "z"
|
||||
"ز" "" "" "z1" // za' isol & init
|
||||
|
||||
"س" "" "$" "s"
|
||||
"س" "" "" "s1" // sin isol
|
||||
|
||||
"ش" "" "$" "S"
|
||||
"ش" "" "" "S1" // shin isol
|
||||
|
||||
"ص" "" "$" "s"
|
||||
"ص" "" "" "s1" // s.ad isol
|
||||
|
||||
"ض" "" "$" "d"
|
||||
"ض" "" "" "d1" // d.ad isol
|
||||
|
||||
"ط" "" "$" "t"
|
||||
"ط" "" "" "t1" // t.a' isol
|
||||
|
||||
"ظ" "" "$" "z"
|
||||
"ظ" "" "" "z1" // z.a' isol
|
||||
|
||||
"ع" "" "" "(h1|1)" // ayin isol
|
||||
|
||||
"ع" "^" "" "1"
|
||||
"ع" "" "$" "1"
|
||||
"ع" "" "" "(h1|1)" // ayin isol
|
||||
"غ" "" "$" "g"
|
||||
"غ" "" "" "g1" // ghayin isol
|
||||
|
||||
"ف" "" "$" "f"
|
||||
"ف" "" "" "f1" // fa' isol
|
||||
|
||||
"ق" "" "$" "k"
|
||||
"ق" "" "" "k1" // qaf isol
|
||||
|
||||
"ك" "" "$" "k"
|
||||
"ك" "" "" "k1" // kaf isol
|
||||
|
||||
"ل" "" "$" "l"
|
||||
"ل" "" "" "l1" // lam isol
|
||||
|
||||
"م" "" "$" "m"
|
||||
"م" "" "" "m1" // mim isol
|
||||
|
||||
"ن" "" "$" "n"
|
||||
"ن" "" "" "n1" // nun isol
|
||||
|
||||
"ه" "^" "" "1"
|
||||
"ه" "" "$" "1"
|
||||
"ه" "" "" "(h1|1)" // h isol
|
||||
|
||||
"و" "" "$" "(u|v)"
|
||||
"و" "" "" "(u|v1)" // waw, isol + init
|
||||
|
||||
|
||||
"ي" "" "$" "(i|j)"
|
||||
"ي" "" "" "(i|j1)" // ya' isol
|
||||
|
|
|
@ -82,7 +82,7 @@
|
|||
"ae" "" "" "Y"
|
||||
"oe" "" "" "Y"
|
||||
"ü" "" "" "Q"
|
||||
"ä" "" "" "Y"
|
||||
"ä" "" "" "(Y|e)"
|
||||
"ö" "" "" "Y"
|
||||
"ei" "" "" "(aj|ej)"
|
||||
"ey" "" "" "(aj|ej)"
|
||||
|
|
|
@ -51,8 +51,8 @@
|
|||
|
||||
"y" "[aáuiíoóeéê]" "" "j"
|
||||
"y" "" "[aeiíou]" "j"
|
||||
"m" "" "[bcdfglnprstv]" "(m|n)" // maybe to add a rule for m/n before a consonant that disappears [preceeding vowel becomes nasalized]
|
||||
"m" "" "$" "(m|n)" // maybe to add a rule for final m/n that disappears [preceeding vowel becomes nasalized]
|
||||
"m" "" "[bcdfglnprstv]" "(m|n)" // maybe to add a rule for m/n before a consonant that disappears [preceding vowel becomes nasalized]
|
||||
"m" "" "$" "(m|n)" // maybe to add a rule for final m/n that disappears [preceding vowel becomes nasalized]
|
||||
|
||||
"ão" "" "" "(au|an|on)"
|
||||
"ãe" "" "" "(aj|an)"
|
||||
|
|
|
@ -1,293 +1,16 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// 1. following are rules to accept the language
|
||||
// 1.1 Special letter combinations
|
||||
^o’ english true
|
||||
^o' english true
|
||||
^mc english true
|
||||
^fitz english true
|
||||
ceau french+romanian true
|
||||
eau$ french true // mp: I've added this
|
||||
eaux$ french true // mp: I've added this
|
||||
ault$ french true
|
||||
oult$ french true
|
||||
eux$ french true
|
||||
eix$ french true
|
||||
glou$ greeklatin true
|
||||
uu dutch true
|
||||
tx spanish true
|
||||
witz german true
|
||||
tz$ german+russian+english true
|
||||
^tz russian+english true
|
||||
poulos$ greeklatin true
|
||||
pulos$ greeklatin true
|
||||
iou greeklatin true
|
||||
sj$ dutch true
|
||||
^sj dutch true
|
||||
güe spanish true
|
||||
güi spanish true
|
||||
ghe romanian+greeklatin true
|
||||
ghi romanian+greeklatin true
|
||||
escu$ romanian true
|
||||
esco$ romanian true
|
||||
vici$ romanian true
|
||||
schi$ romanian true
|
||||
ii$ russian true
|
||||
iy$ russian true
|
||||
yy$ russian true
|
||||
yi$ russian true
|
||||
^rz polish true
|
||||
rz$ polish+german true
|
||||
[bcdfgklmnpstwz]rz polish true
|
||||
rz[bcdfghklmnpstw] polish true
|
||||
etti$ italian true
|
||||
eti$ italian true
|
||||
ati$ italian true
|
||||
ato$ italian true
|
||||
[aoei]no$ italian true
|
||||
[aoei]ni$ italian true
|
||||
esi$ italian true
|
||||
oli$ italian true
|
||||
field$ english true
|
||||
cki$ polish true
|
||||
ska$ polish true
|
||||
cka$ polish true
|
||||
ae german+russian+english true
|
||||
oe german+french+russian+english+dutch true
|
||||
th$ german+english true
|
||||
^th german+english+greeklatin true
|
||||
mann german true
|
||||
cz polish true
|
||||
cy polish+greeklatin true
|
||||
niew polish true
|
||||
stein german true
|
||||
heim$ german true
|
||||
heimer$ german true
|
||||
thal german true
|
||||
zweig german true
|
||||
[aeou]h german true
|
||||
äh german true
|
||||
öh german true
|
||||
üh german true
|
||||
[ln]h[ao]$ portuguese true
|
||||
[ln]h[aou] portuguese+french+german+dutch+czech+spanish+turkish true
|
||||
chsch german true
|
||||
tsch german true
|
||||
sch$ german+russian true
|
||||
^sch german+russian true
|
||||
ck$ german+english true
|
||||
c$ polish+romanian+hungarian+czech+turkish true
|
||||
sz polish+hungarian true
|
||||
cs$ hungarian true
|
||||
^cs hungarian true
|
||||
dzs hungarian true
|
||||
zs$ hungarian true
|
||||
^zs hungarian true
|
||||
^wl polish true
|
||||
^wr polish+english+german+dutch true
|
||||
|
||||
gy$ hungarian true
|
||||
gy[aeou] hungarian true
|
||||
gy hungarian+russian+french+greeklatin true
|
||||
guy french true
|
||||
gu[ei] spanish+french+portuguese true
|
||||
gu[ao] spanish+portuguese true
|
||||
gi[aou] italian+greeklatin true
|
||||
|
||||
ly hungarian+russian+polish+greeklatin true
|
||||
ny hungarian+russian+polish+spanish+greeklatin true
|
||||
ty hungarian+russian+polish+greeklatin true
|
||||
|
||||
// 1.2 special characters
|
||||
ć polish true
|
||||
ç french+spanish+portuguese+turkish true
|
||||
č czech true
|
||||
ď czech true
|
||||
ğ turkish true
|
||||
ł polish true
|
||||
ń polish true
|
||||
ñ spanish true
|
||||
ň czech true
|
||||
ř czech true
|
||||
ś polish true
|
||||
ş romanian+turkish true
|
||||
š czech true
|
||||
ţ romanian true
|
||||
ť czech true
|
||||
ź polish true
|
||||
ż polish true
|
||||
|
||||
ß german true
|
||||
|
||||
ä german true
|
||||
á hungarian+spanish+portuguese+czech+greeklatin true
|
||||
â romanian+french+portuguese true
|
||||
ă romanian true
|
||||
ą polish true
|
||||
à portuguese true
|
||||
ã portuguese true
|
||||
ę polish true
|
||||
é french+hungarian+czech+greeklatin true
|
||||
è french+spanish+italian true
|
||||
ê french true
|
||||
ě czech true
|
||||
ê french+portuguese true
|
||||
í hungarian+spanish+portuguese+czech+greeklatin true
|
||||
î romanian+french true
|
||||
ı turkish true
|
||||
ó polish+hungarian+spanish+italian+portuguese+czech+greeklatin true
|
||||
ö german+hungarian+turkish true
|
||||
ô french+portuguese true
|
||||
õ portuguese+hungarian true
|
||||
ò italian+spanish true
|
||||
ű hungarian true
|
||||
ú hungarian+spanish+portuguese+czech+greeklatin true
|
||||
ü german+hungarian+spanish+portuguese+turkish true
|
||||
ù french true
|
||||
ů czech true
|
||||
ý czech+greeklatin true
|
||||
|
||||
// Every Cyrillic word has at least one Cyrillic vowel (аёеоиуыэюя)
|
||||
а cyrillic true
|
||||
ё cyrillic true
|
||||
о cyrillic true
|
||||
е cyrillic true
|
||||
и cyrillic true
|
||||
у cyrillic true
|
||||
ы cyrillic true
|
||||
э cyrillic true
|
||||
ю cyrillic true
|
||||
я cyrillic true
|
||||
|
||||
// Every Greek word has at least one Greek vowel
|
||||
α greek true
|
||||
ε greek true
|
||||
η greek true
|
||||
ι greek true
|
||||
ο greek true
|
||||
υ greek true
|
||||
ω greek true
|
||||
|
||||
// Arabic (only initial)
|
||||
ا arabic true // alif (isol + init)
|
||||
ب arabic true // ba'
|
||||
ت arabic true // ta'
|
||||
ث arabic true // tha'
|
||||
ج arabic true // jim
|
||||
ح arabic true // h.a'
|
||||
خ' arabic true // kha'
|
||||
د arabic true // dal (isol + init)
|
||||
ذ arabic true // dhal (isol + init)
|
||||
ر arabic true // ra' (isol + init)
|
||||
ز arabic true // za' (isol + init)
|
||||
س arabic true // sin
|
||||
ش arabic true // shin
|
||||
ص arabic true // s.ad
|
||||
ض arabic true // d.ad
|
||||
ط arabic true // t.a'
|
||||
ظ arabic true // z.a'
|
||||
ع arabic true // 'ayn
|
||||
غ arabic true // ghayn
|
||||
ف arabic true // fa'
|
||||
ق arabic true // qaf
|
||||
ك arabic true // kaf
|
||||
ل arabic true // lam
|
||||
م arabic true // mim
|
||||
ن arabic true // nun
|
||||
ه arabic true // ha'
|
||||
و arabic true // waw (isol + init)
|
||||
ي arabic true // ya'
|
||||
|
||||
آ arabic true // alif madda
|
||||
إ arabic true // alif + diacritic
|
||||
أ arabic true // alif + hamza
|
||||
ؤ arabic true // waw + hamza
|
||||
ئ arabic true // ya' + hamza
|
||||
|
||||
|
||||
// Hebrew
|
||||
א hebrew true
|
||||
ב hebrew true
|
||||
ג hebrew true
|
||||
ד hebrew true
|
||||
ה hebrew true
|
||||
ו hebrew true
|
||||
ז hebrew true
|
||||
ח hebrew true
|
||||
ט hebrew true
|
||||
י hebrew true
|
||||
כ hebrew true
|
||||
ל hebrew true
|
||||
מ hebrew true
|
||||
נ hebrew true
|
||||
ס hebrew true
|
||||
ע hebrew true
|
||||
פ hebrew true
|
||||
צ hebrew true
|
||||
ק hebrew true
|
||||
ר hebrew true
|
||||
ש hebrew true
|
||||
ת hebrew true
|
||||
|
||||
// 2. following are rules to reject the language
|
||||
|
||||
// Every Latin character word has at least one Latin vowel
|
||||
a cyrillic+hebrew+greek+arabic false
|
||||
o cyrillic+hebrew+greek+arabic false
|
||||
e cyrillic+hebrew+greek+arabic false
|
||||
i cyrillic+hebrew+greek+arabic false
|
||||
y cyrillic+hebrew+greek+arabic+romanian+dutch false
|
||||
u cyrillic+hebrew+greek+arabic false
|
||||
|
||||
j italian false
|
||||
j[^aoeiuy] french+spanish+portuguese+greeklatin false
|
||||
g czech false
|
||||
k romanian+spanish+portuguese+french+italian false
|
||||
q hungarian+polish+russian+romanian+czech+dutch+turkish+greeklatin false
|
||||
v polish false
|
||||
w french+romanian+spanish+hungarian+russian+czech+turkish+greeklatin false
|
||||
x czech+hungarian+dutch+turkish false // polish excluded from the list
|
||||
|
||||
dj spanish+turkish false
|
||||
v[^aoeiu] german false // in german, "v" can be found before a vowel only
|
||||
y[^aoeiu] german false // in german, "y" usually appears only in the last position; sometimes before a vowel
|
||||
c[^aohk] german false
|
||||
dzi german+english+french+turkish false
|
||||
ou german false
|
||||
a[eiou] turkish false // no diphthongs in Turkish
|
||||
ö[eaio] turkish false
|
||||
ü[eaio] turkish false
|
||||
e[aiou] turkish false
|
||||
i[aeou] turkish false
|
||||
o[aieu] turkish false
|
||||
u[aieo] turkish false
|
||||
aj german+english+french+dutch false
|
||||
ej german+english+french+dutch false
|
||||
oj german+english+french+dutch false
|
||||
uj german+english+french+dutch false
|
||||
eu russian+polish false
|
||||
ky polish false
|
||||
kie french+spanish+greeklatin false
|
||||
gie portuguese+romanian+spanish+greeklatin false
|
||||
ch[aou] italian false
|
||||
ch turkish false
|
||||
son$ german false
|
||||
sc[ei] french false
|
||||
sch hungarian+polish+french+spanish false
|
||||
^h russian false
|
||||
etti$ greeklatin false
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,105 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// SEPHARDIC
|
||||
|
||||
// 1. following are rules to accept the language
|
||||
// 1.1 Special letter combinations
|
||||
eau french true
|
||||
ou french true
|
||||
gni italian+french true
|
||||
tx spanish true
|
||||
tj spanish true
|
||||
gy french true
|
||||
guy french true
|
||||
|
||||
sh spanish+portuguese true // English, but no sign for /sh/ in these languages
|
||||
|
||||
lh portuguese true
|
||||
nh portuguese true
|
||||
ny spanish true
|
||||
|
||||
gue spanish+french true
|
||||
gui spanish+french true
|
||||
gia italian true
|
||||
gie italian true
|
||||
gio italian true
|
||||
giu italian true
|
||||
|
||||
// 1.2 special characters
|
||||
ñ spanish true
|
||||
â portuguese+french true
|
||||
á portuguese+spanish true
|
||||
à portuguese true
|
||||
ã portuguese true
|
||||
ê french+portuguese true
|
||||
í portuguese+spanish true
|
||||
î french true
|
||||
ô french+portuguese true
|
||||
õ portuguese true
|
||||
ò italian+spanish true
|
||||
ú portuguese+spanish true
|
||||
ù french true
|
||||
ü portuguese+spanish true
|
||||
|
||||
// Hebrew
|
||||
א hebrew true
|
||||
ב hebrew true
|
||||
ג hebrew true
|
||||
ד hebrew true
|
||||
ה hebrew true
|
||||
ו hebrew true
|
||||
ז hebrew true
|
||||
ח hebrew true
|
||||
ט hebrew true
|
||||
י hebrew true
|
||||
כ hebrew true
|
||||
ל hebrew true
|
||||
מ hebrew true
|
||||
נ hebrew true
|
||||
ס hebrew true
|
||||
ע hebrew true
|
||||
פ hebrew true
|
||||
צ hebrew true
|
||||
ק hebrew true
|
||||
ר hebrew true
|
||||
ש hebrew true
|
||||
ת hebrew true
|
||||
|
||||
// 2. following are rules to reject the language
|
||||
|
||||
// Every Latin character word has at least one Latin vowel
|
||||
a hebrew false
|
||||
o hebrew false
|
||||
e hebrew false
|
||||
i hebrew false
|
||||
y hebrew false
|
||||
u hebrew false
|
||||
|
||||
kh spanish false
|
||||
gua italian false
|
||||
guo italian false
|
||||
ç italian false
|
||||
cha italian false
|
||||
cho italian false
|
||||
chu italian false
|
||||
j italian false
|
||||
dj spanish false
|
||||
sce french false
|
||||
sci french false
|
||||
ó french false
|
||||
è portuguese false
|
|
@ -50,8 +50,8 @@
|
|||
|
||||
"y" "[aáuiíoóeéê]" "" "j"
|
||||
"y" "" "[aeiíou]" "j"
|
||||
"m" "" "[bcdfglnprstv]" "(m|n)" // maybe to add a rule for m/n before a consonant that disappears [preceeding vowel becomes nasalized]
|
||||
"m" "" "$" "(m|n)" // maybe to add a rule for final m/n that disappears [preceeding vowel becomes nasalized]
|
||||
"m" "" "[bcdfglnprstv]" "(m|n)" // maybe to add a rule for m/n before a consonant that disappears [preceding vowel becomes nasalized]
|
||||
"m" "" "$" "(m|n)" // maybe to add a rule for final m/n that disappears [preceding vowel becomes nasalized]
|
||||
|
||||
"ão" "" "" "(au|an|on)"
|
||||
"ãe" "" "" "(aj|an)"
|
||||
|
|
|
@ -0,0 +1,200 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// Format
|
||||
// "pattern" "replacement at start of word" "replacement before a vowel" "replacement in other cases"
|
||||
|
||||
// Vowels
|
||||
|
||||
"a" "0" "" ""
|
||||
"e" "0" "" ""
|
||||
"i" "0" "" ""
|
||||
"o" "0" "" ""
|
||||
"u" "0" "" ""
|
||||
|
||||
// Consonants
|
||||
|
||||
"b" "7" "7" "7"
|
||||
"d" "3" "3" "3"
|
||||
"f" "7" "7" "7"
|
||||
"g" "5" "5" "5"
|
||||
"h" "5" "5" ""
|
||||
"k" "5" "5" "5"
|
||||
"l" "8" "8" "8"
|
||||
"m" "6" "6" "6"
|
||||
"n" "6" "6" "6"
|
||||
"p" "7" "7" "7"
|
||||
"q" "5" "5" "5"
|
||||
"r" "9" "9" "9"
|
||||
"s" "4" "4" "4"
|
||||
"t" "3" "3" "3"
|
||||
"v" "7" "7" "7"
|
||||
"w" "7" "7" "7"
|
||||
"x" "5" "54" "54"
|
||||
"y" "1" "" ""
|
||||
"z" "4" "4" "4"
|
||||
|
||||
// Romanian t-cedilla and t-comma should be equivalent
|
||||
"ţ" "3|4" "3|4" "3|4"
|
||||
"ț" "3|4" "3|4" "3|4"
|
||||
|
||||
// Polish characters (e-ogonek and a-ogonek): default case branch either not coded or 6
|
||||
"ę" "" "" "|6"
|
||||
"ą" "" "" "|6"
|
||||
|
||||
// Other terms
|
||||
|
||||
"schtsch" "2" "4" "4"
|
||||
"schtsh" "2" "4" "4"
|
||||
"schtch" "2" "4" "4"
|
||||
"shtch" "2" "4" "4"
|
||||
"shtsh" "2" "4" "4"
|
||||
"stsch" "2" "4" "4"
|
||||
"ttsch" "4" "4" "4"
|
||||
"zhdzh" "2" "4" "4"
|
||||
"shch" "2" "4" "4"
|
||||
"scht" "2" "43" "43"
|
||||
"schd" "2" "43" "43"
|
||||
"stch" "2" "4" "4"
|
||||
"strz" "2" "4" "4"
|
||||
"strs" "2" "4" "4"
|
||||
"stsh" "2" "4" "4"
|
||||
"szcz" "2" "4" "4"
|
||||
"szcs" "2" "4" "4"
|
||||
"ttch" "4" "4" "4"
|
||||
"tsch" "4" "4" "4"
|
||||
"ttsz" "4" "4" "4"
|
||||
"zdzh" "2" "4" "4"
|
||||
"zsch" "4" "4" "4"
|
||||
"chs" "5" "54" "54"
|
||||
"csz" "4" "4" "4"
|
||||
"czs" "4" "4" "4"
|
||||
"drz" "4" "4" "4"
|
||||
"drs" "4" "4" "4"
|
||||
"dsh" "4" "4" "4"
|
||||
"dsz" "4" "4" "4"
|
||||
"dzh" "4" "4" "4"
|
||||
"dzs" "4" "4" "4"
|
||||
"sch" "4" "4" "4"
|
||||
"sht" "2" "43" "43"
|
||||
"szt" "2" "43" "43"
|
||||
"shd" "2" "43" "43"
|
||||
"szd" "2" "43" "43"
|
||||
"tch" "4" "4" "4"
|
||||
"trz" "4" "4" "4"
|
||||
"trs" "4" "4" "4"
|
||||
"tsh" "4" "4" "4"
|
||||
"tts" "4" "4" "4"
|
||||
"ttz" "4" "4" "4"
|
||||
"tzs" "4" "4" "4"
|
||||
"tsz" "4" "4" "4"
|
||||
"zdz" "2" "4" "4"
|
||||
"zhd" "2" "43" "43"
|
||||
"zsh" "4" "4" "4"
|
||||
"ai" "0" "1" ""
|
||||
"aj" "0" "1" ""
|
||||
"ay" "0" "1" ""
|
||||
"au" "0" "7" ""
|
||||
"cz" "4" "4" "4"
|
||||
"cs" "4" "4" "4"
|
||||
"ds" "4" "4" "4"
|
||||
"dz" "4" "4" "4"
|
||||
"dt" "3" "3" "3"
|
||||
"ei" "0" "1" ""
|
||||
"ej" "0" "1" ""
|
||||
"ey" "0" "1" ""
|
||||
"eu" "1" "1" ""
|
||||
"fb" "7" "7" "7"
|
||||
"ia" "1" "" ""
|
||||
"ie" "1" "" ""
|
||||
"io" "1" "" ""
|
||||
"iu" "1" "" ""
|
||||
"ks" "5" "54" "54"
|
||||
"kh" "5" "5" "5"
|
||||
"mn" "66" "66" "66"
|
||||
"nm" "66" "66" "66"
|
||||
"oi" "0" "1" ""
|
||||
"oj" "0" "1" ""
|
||||
"oy" "0" "1" ""
|
||||
"pf" "7" "7" "7"
|
||||
"ph" "7" "7" "7"
|
||||
"sh" "4" "4" "4"
|
||||
"sc" "2" "4" "4"
|
||||
"st" "2" "43" "43"
|
||||
"sd" "2" "43" "43"
|
||||
"sz" "4" "4" "4"
|
||||
"th" "3" "3" "3"
|
||||
"ts" "4" "4" "4"
|
||||
"tc" "4" "4" "4"
|
||||
"tz" "4" "4" "4"
|
||||
"ui" "0" "1" ""
|
||||
"uj" "0" "1" ""
|
||||
"uy" "0" "1" ""
|
||||
"ue" "0" "1" ""
|
||||
"zd" "2" "43" "43"
|
||||
"zh" "4" "4" "4"
|
||||
"zs" "4" "4" "4"
|
||||
|
||||
// Branching cases
|
||||
|
||||
"c" "4|5" "4|5" "4|5"
|
||||
"ch" "4|5" "4|5" "4|5"
|
||||
"ck" "5|45" "5|45" "5|45"
|
||||
"rs" "4|94" "4|94" "4|94"
|
||||
"rz" "4|94" "4|94" "4|94"
|
||||
"j" "1|4" "|4" "|4"
|
||||
|
||||
|
||||
// ASCII foldings
|
||||
|
||||
ß=s
|
||||
à=a
|
||||
á=a
|
||||
â=a
|
||||
ã=a
|
||||
ä=a
|
||||
å=a
|
||||
æ=a
|
||||
ç=c
|
||||
è=e
|
||||
é=e
|
||||
ê=e
|
||||
ë=e
|
||||
ì=i
|
||||
í=i
|
||||
î=i
|
||||
ï=i
|
||||
ð=d
|
||||
ñ=n
|
||||
ò=o
|
||||
ó=o
|
||||
ô=o
|
||||
õ=o
|
||||
ö=o
|
||||
ø=o
|
||||
ù=u
|
||||
ú=u
|
||||
û=u
|
||||
ý=y
|
||||
ý=y
|
||||
þ=b
|
||||
ÿ=y
|
||||
ć=c
|
||||
ł=l
|
||||
ś=s
|
||||
ż=z
|
||||
ź=z
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement-api
|
||||
play-services-measurement-api_client=17.2.2
|
||||
play-services-measurement-api_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement-base
|
||||
play-services-measurement-base_client=17.2.2
|
||||
play-services-measurement-base_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement-impl
|
||||
play-services-measurement-impl_client=17.2.2
|
||||
play-services-measurement-impl_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement-sdk-api
|
||||
play-services-measurement-sdk-api_client=17.2.2
|
||||
play-services-measurement-sdk-api_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement-sdk
|
||||
play-services-measurement-sdk_client=17.2.2
|
||||
play-services-measurement-sdk_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=17.2.2
|
||||
version=17.4.2
|
||||
client=play-services-measurement
|
||||
play-services-measurement_client=17.2.2
|
||||
play-services-measurement_client=17.4.2
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=2.2.0
|
||||
version=2.2.3
|
||||
client=transport-backend-cct
|
||||
transport-backend-cct_client=2.2.0
|
||||
transport-backend-cct_client=2.2.3
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version=2.2.0
|
||||
version=2.2.3
|
||||
client=transport-runtime
|
||||
transport-runtime_client=2.2.0
|
||||
transport-runtime_client=2.2.3
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue