diff options
| author | aarne <unknown> | 2003-11-14 12:36:23 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2003-11-14 12:36:23 +0000 |
| commit | 5a7d6e542d7fc0c01bec9163e4be732ac1c6d217 (patch) | |
| tree | 7e7899236393081209aa494b391d3409d087fcc3 /src/GF/Text/Hebrew.hs | |
| parent | 37384dbe06913a0352d4459050c1382874a45a62 (diff) | |
New unicodings.
New unicodings.
Module with works.
Better compilation of old GF.
Diffstat (limited to 'src/GF/Text/Hebrew.hs')
| -rw-r--r-- | src/GF/Text/Hebrew.hs | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/GF/Text/Hebrew.hs b/src/GF/Text/Hebrew.hs index ebcc078e3..abd2855b8 100644 --- a/src/GF/Text/Hebrew.hs +++ b/src/GF/Text/Hebrew.hs @@ -1,13 +1,28 @@ module Hebrew where mkHebrew :: String -> String -mkHebrew = reverse . unwords . (map mkHebrewWord) . words +mkHebrew = mkHebrewWord --- reverse : assumes everything's on same line type HebrewChar = Char +-- HH 031103 added code for spooling the markup +-- removed reverse, words, unwords (seemed obsolete and come out wrong on the screen) + mkHebrewWord :: String -> [HebrewChar] -mkHebrewWord = map mkHebrewChar +-- mkHebrewWord = map mkHebrewChar + +mkHebrewWord s = case s of + [] -> [] + '<' : cs -> '<' : spoolMarkup cs + ' ' : cs -> ' ' : mkHebrewWord cs + c1 : cs -> mkHebrewChar c1 : mkHebrewWord cs + +spoolMarkup :: String -> String +spoolMarkup s = case s of + [] -> [] -- Shouldn't happen + '>' : cs -> '>' : mkHebrewWord cs + c1 : cs -> c1 : spoolMarkup cs mkHebrewChar c = case lookup c cc of Just c' -> c' ; _ -> c where |
