Ticket #3704: patch.2.diff
File patch.2.diff, 6.1 KB (added by , 18 years ago) |
---|
-
django/core/validators.py
363 363 self.lower, self.upper = lower, upper 364 364 if not error_message: 365 365 if lower and upper: 366 self.error_message = gettext("This value must be between % s and %s.") % (lower, upper)366 self.error_message = gettext("This value must be between %(lower)s and %(upper)s.") % {'lower': lower, 'upper': upper} 367 367 elif lower: 368 368 self.error_message = gettext("This value must be at least %s.") % lower 369 369 elif upper: -
django/contrib/humanize/templatetags/humanize.py
1 from django.utils.translation import ngettext 1 2 from django import template 2 3 import re 3 4 … … 3 4 register = template.Library() 4 5 5 def ordinal(value ):6 def ordinal(value, sup=False): 6 7 """ 7 8 Converts an integer to its ordinal as a string. 1 is '1st', 2 is '2nd', … … 12 13 value = int(value) 13 14 except ValueError: 14 15 return value 15 t = ('th', 'st', 'nd', 'rd', 'th', 'th', 'th', 'th', 'th', 'th') 16 t = (_('th'), _('st'), _('nd'), _('rd'), _('th'), _('th'), _('th'), _('th'), _('th'), _('th')) 17 if sup: 18 t = ['<sup>'+i+'</sup>' for i in t] 16 19 if value % 100 in (11, 12, 13): # special case 17 return '%dth' % value20 return "%d%s" % (value, t[0]) 18 21 return '%d%s' % (value, t[value % 10]) 19 22 register.filter(ordinal) 20 23 … … 41 44 if value < 1000000: 42 45 return value 43 46 if value < 1000000000: 44 return '%.1f million' % (value / 1000000.0) 47 new_value = value / 1000000.0 48 return ngettext('%(value).1f million', '%(value).1f million', new_value) % {'value': new_value} 45 49 if value < 1000000000000: 46 return '%.1f billion' % (value / 1000000000.0) 50 new_value = value / 1000000000.0 51 return ngettext('%(value).1f billion', '%(value).1f billion', new_value) % {'value': new_value} 47 52 if value < 1000000000000000: 48 return '%.1f trillion' % (value / 1000000000000.0) 53 new_value = value / 1000000000000.0 54 return ngettext('%(value).1f trillion', '%(value).1f trillion', new_value) % {'value': new_value} 49 55 return value 50 56 register.filter(intword) 51 57 … … 60 66 return value 61 67 if not 0 < value < 10: 62 68 return value 63 return ( 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine')[value-1]69 return (_('one'), _('two'), _('three'), _('four'), _('five'), _('six'), _('seven'), _('eight'), _('nine'))[value-1] 64 70 register.filter(apnumber) -
django/contrib/admin/views/doc.py
168 168 model = m 169 169 break 170 170 if model is None: 171 raise Http404, _("Model % r not found in app %r") % (model_name, app_label)171 raise Http404, _("Model %(name)r not found in app %(label)r") % {'name': model_name, 'label': app_label} 172 172 173 173 opts = model._meta 174 174 … … 180 180 if isinstance(field, models.ForeignKey): 181 181 data_type = related_object_name = field.rel.to.__name__ 182 182 app_label = field.rel.to._meta.app_label 183 verbose = utils.parse_rst((_("the related `% s.%s` object") % (app_label, data_type)), 'model', _('model:') + data_type)183 verbose = utils.parse_rst((_("the related `%(label)s.%(type)s` object") % {'label': app_label, 'type': data_type}), 'model', _('model:') + data_type) 184 184 else: 185 185 data_type = get_readable_field_data_type(field) 186 186 verbose = field.verbose_name … … 211 211 212 212 # Gather related objects 213 213 for rel in opts.get_all_related_objects(): 214 verbose = _("related `% s.%s` objects") % (rel.opts.app_label, rel.opts.object_name)214 verbose = _("related `%(label)s.%(name)s` objects") % {'label': rel.opts.app_label, 'name': rel.opts.object_name} 215 215 accessor = rel.get_accessor_name() 216 216 fields.append({ 217 217 'name' : "%s.all" % accessor, -
django/bin/make-messages.py
81 81 src = pythonize_re.sub('\n#', src) 82 82 open(os.path.join(dirpath, '%s.py' % file), "wb").write(src) 83 83 thefile = '%s.py' % file 84 cmd = 'xgettext %s -d %s -L Perl --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy - o - "%s"' % (84 cmd = 'xgettext %s -d %s -L Perl --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy --from-code UTF-8 -o - "%s"' % ( 85 85 os.path.exists(potfile) and '--omit-header' or '', domain, os.path.join(dirpath, thefile)) 86 86 (stdin, stdout, stderr) = os.popen3(cmd, 'b') 87 87 msgs = stdout.read() … … 103 103 open(os.path.join(dirpath, '%s.py' % file), "wb").write(templatize(src)) 104 104 thefile = '%s.py' % file 105 105 if verbose: sys.stdout.write('processing file %s in %s\n' % (file, dirpath)) 106 cmd = 'xgettext %s -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy - o - "%s"' % (106 cmd = 'xgettext %s -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy --from-code UTF-8 -o - "%s"' % ( 107 107 os.path.exists(potfile) and '--omit-header' or '', domain, os.path.join(dirpath, thefile)) 108 108 (stdin, stdout, stderr) = os.popen3(cmd, 'b') 109 109 msgs = stdout.read()