comparison roundup/i18n.py @ 2356:c2db20eca3fa

fix ungettext() in PluralFormsMixIn; in get_translation(), don't look for english fallback if language is 'en'
author Alexander Smishlajev <a1s@users.sourceforge.net>
date Sat, 22 May 2004 14:55:07 +0000
parents 6c2d8183a235
children e8b2044d82a6
comparison
equal deleted inserted replaced
2355:6c2d8183a235 2356:c2db20eca3fa
13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" 14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, 15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. 16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
17 # 17 #
18 # $Id: i18n.py,v 1.7 2004-05-22 14:40:17 a1s Exp $ 18 # $Id: i18n.py,v 1.8 2004-05-22 14:55:07 a1s Exp $
19 19
20 """ 20 """
21 RoundUp Internationalization (I18N) 21 RoundUp Internationalization (I18N)
22 22
23 To use this module, the following code should be used:: 23 To use this module, the following code should be used::
86 if count == 1: 86 if count == 1:
87 _msg = singular 87 _msg = singular
88 else: 88 else:
89 _msg = plural 89 _msg = plural
90 return self.gettext(_msg) 90 return self.gettext(_msg)
91 def ngettext(self, singular, plural, count): 91 def ungettext(self, singular, plural, count):
92 if count == 1: 92 if count == 1:
93 _msg = singular 93 _msg = singular
94 else: 94 else:
95 _msg = plural 95 _msg = plural
96 return self.gettext(_msg) 96 return self.ugettext(_msg)
97 class RoundupNullTranslations( 97 class RoundupNullTranslations(
98 gettext_module.NullTranslations, PluralFormsMixIn 98 gettext_module.NullTranslations, PluralFormsMixIn
99 ): 99 ):
100 pass 100 pass
101 class RoundupTranslations( 101 class RoundupTranslations(
117 _languages = [language] 117 _languages = [language]
118 else: 118 else:
119 # use OS environment 119 # use OS environment
120 _languages = None 120 _languages = None
121 # except for english ("en") language, add english fallback if available 121 # except for english ("en") language, add english fallback if available
122 try: 122 if language == "en":
123 _fallback = translation(domain=domain, languages=["en"],
124 class_=RoundupTranslations)
125 except IOError:
126 # no .mo files found
127 _fallback = None 123 _fallback = None
124 else:
125 try:
126 _fallback = translation(domain=domain, languages=["en"],
127 class_=RoundupTranslations)
128 except IOError:
129 # no .mo files found
130 _fallback = None
128 # get the translation 131 # get the translation
129 try: 132 try:
130 _translation = translation(domain=domain, languages=_languages, 133 _translation = translation(domain=domain, languages=_languages,
131 class_=RoundupTranslations) 134 class_=RoundupTranslations)
132 except IOError: 135 except IOError:

Roundup Issue Tracker: http://roundup-tracker.org/