mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
making Arabic minimal compile; strange chars remain
This commit is contained in:
@@ -1789,7 +1789,7 @@ incomplete resource Constructors = open Grammar in {
|
||||
|
||||
-- numerals from strings
|
||||
|
||||
oper
|
||||
oper --# notminimal
|
||||
str2ord : Str -> Ord = \s -> case Predef.lessInt (Predef.length s) 7 of {
|
||||
Predef.PTrue => OrdNumeral (str2numeral s) ;
|
||||
Predef.PFalse => OrdDigits (str2digits s)
|
||||
@@ -1802,9 +1802,9 @@ oper
|
||||
|
||||
str2numeral : Str -> Numeral = (\s -> case s of {
|
||||
m@(? + _) + "000" => num (pot3 (s2s1000 m)) ;
|
||||
m@(? + _) + "00" + n@? => num (pot3plus (s2s1000 m) (s2s1000 n)) ;
|
||||
m@(? + _) + "0" + n@(? + ?) => num (pot3plus (s2s1000 m) (s2s1000 n)) ;
|
||||
m@(? + _) + n@(? + ? + ?) => num (pot3plus (s2s1000 m) (s2s1000 n)) ;
|
||||
m@(? + _) + "00" + n@? => num (pot3plus (s2s1000 m) (s2s1000 n)) ; --# notminimal
|
||||
m@(? + _) + "0" + n@(? + ?) => num (pot3plus (s2s1000 m) (s2s1000 n)) ; --# notminimal
|
||||
m@(? + _) + n@(? + ? + ?) => num (pot3plus (s2s1000 m) (s2s1000 n)) ; --# notminimal
|
||||
_ => num (pot2as3 (s2s1000 s))
|
||||
})
|
||||
where {
|
||||
|
||||
@@ -41,9 +41,9 @@ flags optimize = all ;--noexpand; coding=utf8 ;
|
||||
|
||||
vowel : Case => Str =
|
||||
table {
|
||||
Nom => "ُ";
|
||||
Acc => "َ";
|
||||
Gen => "ِ"
|
||||
Nom => "ُ";
|
||||
Acc => "َ";
|
||||
Gen => "ِ"
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -355,7 +355,7 @@ resource ParadigmsAra = open
|
||||
|
||||
-- e.g. al-jamii3, 2a7ad
|
||||
regNP : Str -> Number -> NP = \word,n ->
|
||||
{ s = \\c => word + vowel ! c ;
|
||||
{ s = \\c => word ++ vowel ! c ; ---- gives strange chars
|
||||
a = {pgn = Per3 Masc n; isPron = False };
|
||||
lock_NP = <>
|
||||
};
|
||||
|
||||
@@ -130,9 +130,10 @@ transArabic = mkTransliteration "Arabic" allTrans allCodes where
|
||||
" V A: A? w? A- y? A b t. t v g H K d " ++ -- 0621 - 062f
|
||||
"W r z s C S D T Z c G " ++ -- 0630 - 063a
|
||||
" f q k l m n h w y. y a. u. i. a u " ++ -- 0641 - 064f
|
||||
"i v2 o a: V+ V- i: a+" -- 0650 - 0657
|
||||
"i v2 o a: V+ V- i: a+ " ++ -- 0650 - 0657
|
||||
"A* " -- 0671 (used by AED)
|
||||
allCodes = [0x0621..0x062f] ++ [0x0630..0x063a] ++
|
||||
[0x0641..0x064f] ++ [0x0650..0x0657]
|
||||
[0x0641..0x064f] ++ [0x0650..0x0657] ++ [0x0671]
|
||||
|
||||
transPersian :: Transliteration
|
||||
transPersian = (mkTransliteration "Persian/Farsi" allTrans allCodes)
|
||||
|
||||
Reference in New Issue
Block a user