1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
-- |
-- Module : HsIndex.CharLists.French
-- Copyright : Jean-Luc JOULIN 2018-2019
-- License : General Public Licence (GPLv3)
-- Maintainer : Jean-Luc JOULIN <jean-luc-joulin@orange.fr>
-- Stability : alpha
-- Portability : portable
-- The letters, numbers and symbol definition for the french language.
module HsIndex.CharLists.French where
import HsIndex.Functions
import HsIndex.CharLists.Symbols
import HsIndex.Types
lstSubsLatin = take 1
ordFrench = lstLatinLetter
ordFrenchUpperLower = upperLower lstLatinLetter
lstLatinLetter =
[ 'a'
, 'b'
, 'c'
, 'd'
, 'e'
, 'f'
, 'g'
, 'h'
, 'i'
, 'j'
, 'k'
, 'l'
, 'm'
, 'n'
, 'o'
, 'p'
, 'q'
, 'r'
, 's'
, 't'
, 'u'
, 'v'
, 'w'
, 'x'
, 'y'
, 'z'
]
subsFrenchUpperLower = replaUpperLower subsFrench
subsFrench =
[ ('à', "a")
, ('â', "a")
, ('å', "a")
, ('ä', "a")
, ('ç', "c")
, ('é', "e")
, ('è', "e")
, ('ê', "e")
, ('ë', "e")
, ('î', "i")
, ('ï', "i")
, ('ô', "o")
, ('ö', "o")
, ('ù', "u")
, ('û', "u")
, ('ü', "u")
, ('æ', "ae")
, ('œ', "oe")
]
subsSymb =
[ ('-', " ")
, ('_', " ")
, ('\\', " ")
]
langDefFrench = LangDef
{ lstLetters = lstSpace ++ ordFrenchUpperLower -- ++ (map substituted subsFrenchUpperLower)
, lstNumbers = lstDigit
, lstSymbols = Nothing
, lstSubs = subsFrenchUpperLower++subsSymb
, lstSecOrder = [Symbols, Numbers, Letters]
}
|