1 from __future__ import unicode_literals
2
3 locale_keys = set([
4 'MonthOffsets', 'Months', 'WeekdayOffsets', 'Weekdays',
5 'dateFormats', 'dateSep', 'dayOffsets', 'dp_order',
6 'localeID', 'meridian', 'Modifiers', 're_sources', 're_values',
7 'shortMonths', 'shortWeekdays', 'timeFormats', 'timeSep', 'units',
8 'uses24', 'usesMeridian', 'numbers', 'decimal_mark', 'small',
9 'magnitude', 'ignore'])
10
11 localeID = None
12
13 dateSep = ['/', '.']
14 timeSep = [':']
15 meridian = ['AM', 'PM']
16 usesMeridian = True
17 uses24 = True
18 WeekdayOffsets = {}
19 MonthOffsets = {}
20
21
22 Weekdays = [
23 'monday', 'tuesday', 'wednesday', 'thursday',
24 'friday', 'saturday', 'sunday',
25 ]
26
27 shortWeekdays = [
28 'mon', 'tues|tue', 'wed', 'thu', 'fri', 'sat', 'sun',
29 ]
30
31 Months = [
32 'january', 'february', 'march', 'april', 'may', 'june', 'july',
33 'august', 'september', 'october', 'november', 'december',
34 ]
35
36 shortMonths = [
37 'jan', 'feb', 'mar', 'apr', 'may', 'jun',
38 'jul', 'aug', 'sep', 'oct', 'nov', 'dec',
39 ]
40
41
42 dateFormats = {
43 'full': 'EEEE, MMMM d, yyyy',
44 'long': 'MMMM d, yyyy',
45 'medium': 'MMM d, yyyy',
46 'short': 'M/d/yy'
47 }
48
49 timeFormats = {
50 'full': 'h:mm:ss a z',
51 'long': 'h:mm:ss a z',
52 'medium': 'h:mm:ss a',
53 'short': 'h:mm a',
54 }
55
56 dp_order = ['m', 'd', 'y']
57
58
59 numbers = {
60 'zero': 0,
61 'one': 1,
62 'a': 1,
63 'an': 1,
64 'two': 2,
65 'three': 3,
66 'four': 4,
67 'five': 5,
68 'six': 6,
69 'seven': 7,
70 'eight': 8,
71 'nine': 9,
72 'ten': 10,
73 'eleven': 11,
74 'thirteen': 13,
75 'fourteen': 14,
76 'fifteen': 15,
77 'sixteen': 16,
78 'seventeen': 17,
79 'eighteen': 18,
80 'nineteen': 19,
81 'twenty': 20,
82 }
83
84 decimal_mark = '.'
85
86
87
88 units = {
89 'seconds': ['second', 'seconds', 'sec', 's'],
90 'minutes': ['minute', 'minutes', 'min', 'm'],
91 'hours': ['hour', 'hours', 'hr', 'h'],
92 'days': ['day', 'days', 'dy', 'd'],
93 'weeks': ['week', 'weeks', 'wk', 'w'],
94 'months': ['month', 'months', 'mth'],
95 'years': ['year', 'years', 'yr', 'y'],
96 }
97
98
99
100 re_values = {
101 'specials': 'in|on|of|at',
102 'timeseparator': ':',
103 'rangeseparator': '-',
104 'daysuffix': 'rd|st|nd|th',
105 'meridian': r'am|pm|a\.m\.|p\.m\.|a|p',
106 'qunits': 'h|m|s|d|w|y',
107 'now': ['now', 'right now'],
108 }
109
110
111 Modifiers = {
112 'from': 1,
113 'before': -1,
114 'after': 1,
115 'ago': -1,
116 'prior': -1,
117 'prev': -1,
118 'last': -1,
119 'next': 1,
120 'previous': -1,
121 'end of': 0,
122 'this': 0,
123 'eod': 1,
124 'eom': 1,
125 'eoy': 1,
126 }
127
128 dayOffsets = {
129 'tomorrow': 1,
130 'today': 0,
131 'yesterday': -1,
132 }
133
134
135
136
137
138 re_sources = {
139 'noon': {'hr': 12, 'mn': 0, 'sec': 0},
140 'afternoon': {'hr': 13, 'mn': 0, 'sec': 0},
141 'lunch': {'hr': 12, 'mn': 0, 'sec': 0},
142 'morning': {'hr': 6, 'mn': 0, 'sec': 0},
143 'breakfast': {'hr': 8, 'mn': 0, 'sec': 0},
144 'dinner': {'hr': 19, 'mn': 0, 'sec': 0},
145 'evening': {'hr': 18, 'mn': 0, 'sec': 0},
146 'midnight': {'hr': 0, 'mn': 0, 'sec': 0},
147 'night': {'hr': 21, 'mn': 0, 'sec': 0},
148 'tonight': {'hr': 21, 'mn': 0, 'sec': 0},
149 'eod': {'hr': 17, 'mn': 0, 'sec': 0},
150 }
151
152 small = {
153 'zero': 0,
154 'one': 1,
155 'a': 1,
156 'an': 1,
157 'two': 2,
158 'three': 3,
159 'four': 4,
160 'five': 5,
161 'six': 6,
162 'seven': 7,
163 'eight': 8,
164 'nine': 9,
165 'ten': 10,
166 'eleven': 11,
167 'twelve': 12,
168 'thirteen': 13,
169 'fourteen': 14,
170 'fifteen': 15,
171 'sixteen': 16,
172 'seventeen': 17,
173 'eighteen': 18,
174 'nineteen': 19,
175 'twenty': 20,
176 'thirty': 30,
177 'forty': 40,
178 'fifty': 50,
179 'sixty': 60,
180 'seventy': 70,
181 'eighty': 80,
182 'ninety': 90
183 }
184
185 magnitude = {
186 'thousand': 1000,
187 'million': 1000000,
188 'billion': 1000000000,
189 'trillion': 1000000000000,
190 'quadrillion': 1000000000000000,
191 'quintillion': 1000000000000000000,
192 'sextillion': 1000000000000000000000,
193 'septillion': 1000000000000000000000000,
194 'octillion': 1000000000000000000000000000,
195 'nonillion': 1000000000000000000000000000000,
196 'decillion': 1000000000000000000000000000000000,
197 }
198
199 ignore = ('and', ',')
200