|
1 | 1 | #encoding=utf-8
|
2 | 2 | '''http://ginstrom.com/scribbles/2007/10/08/design-patterns-python-style/'''
|
3 | 3 |
|
4 |
| -class GreekGetter: |
5 |
| - """A simple localizer a la gettext""" |
6 |
| - def __init__(self): |
7 |
| - self.trans = dict( dog="σκύλος", cat="γάτα" ) |
8 |
| - |
9 |
| - def get(self, msgid): |
| 4 | +class GreekGetter: |
| 5 | + """A simple localizer a la gettext""" |
| 6 | + def __init__(self): |
| 7 | + self.trans = dict(dog="σκύλος", cat="γάτα") |
| 8 | + |
| 9 | + def get(self, msgid): |
10 | 10 | """We'll punt if we don't have a translation"""
|
11 |
| - try: |
12 |
| - return self.trans[msgid] |
13 |
| - except KeyError: |
14 |
| - return str(msgid) |
| 11 | + try: |
| 12 | + return self.trans[msgid] |
| 13 | + except KeyError: |
| 14 | + return str(msgid) |
15 | 15 |
|
16 |
| -class EnglishGetter: |
| 16 | +class EnglishGetter: |
17 | 17 | """Simply echoes the msg ids"""
|
18 |
| - def get(self, msgid): |
19 |
| - return str(msgid) |
| 18 | + def get(self, msgid): |
| 19 | + return str(msgid) |
20 | 20 |
|
21 |
| -def get_localizer(language="English"): |
22 |
| - """The factory method""" |
23 |
| - languages = dict(English=EnglishGetter,Greek=GreekGetter) |
24 |
| - return languages[language]() |
| 21 | +def get_localizer(language="English"): |
| 22 | + """The factory method""" |
| 23 | + languages = dict(English=EnglishGetter, Greek=GreekGetter) |
| 24 | + return languages[language]() |
25 | 25 |
|
26 |
| -# Create our localizers |
27 |
| -e, j = get_localizer("English"), get_localizer("Greek") |
28 |
| -# Localize some text |
29 |
| -for msgid in "dog parrot cat bear".split(): |
30 |
| - print(e.get(msgid), j.get(msgid)) |
| 26 | +# Create our localizers |
| 27 | +e, g = get_localizer("English"), get_localizer("Greek") |
| 28 | +# Localize some text |
| 29 | +for msgid in "dog parrot cat bear".split(): |
| 30 | + print(e.get(msgid), g.get(msgid)) |
0 commit comments