Skip to main content

Additional I18n Support APIs

Project description

This package provides additional I18n and L10n features. In particular it provides an API to compute the time duratrions over various timezones.

Detailed Dcoumentation

Time Duration Computation

The duration format code is not ideal, but as the code notes, the icu library does not appear to support internationalizing dates. Therefore, this approach tries to get close enough to be flexible enough for most localization. Only time, and localizers, will tell if it is a reasonable approach.

The formatter always gives the first two pertinent measures of a duration, leaving off the rest. The rest of the file just shows some examples.

>>> from zc.i18n.duration import format
>>> from zope.publisher.browser import TestRequest
>>> request = TestRequest()
>>> from datetime import timedelta
>>> format(request, timedelta(days=5))
u'5 days '
>>> format(request, timedelta(days=1))
u'1 day '
>>> format(request, timedelta(days=1, hours=13, minutes=12))
u'1 day 13 hours '
>>> format(request, timedelta(hours=13, minutes=12))
u'13 hours 12 minutes '
>>> format(request, timedelta(hours=13))
u'13 hours '
>>> format(request, timedelta(hours=1, minutes=1, seconds=1))
u'1 hour 1 minute '
>>> format(request, timedelta(minutes=45, seconds=1))
u'45 minutes 1 second'
>>> format(request, timedelta(seconds=5))
u'5 seconds'
>>> format(request, timedelta(days=-1, hours=-2))
u'-1 day -2 hours '
>>> format(request, timedelta(days=-2, hours=22))
u'-1 day -2 hours '
>>> format(request, timedelta(days=-1))
u'-1 day '
>>> format(request, timedelta(days=-1, hours=-13, minutes=-12))
u'-1 day -13 hours '
>>> format(request, timedelta(hours=-13, minutes=-12))
u'-13 hours -12 minutes '
>>> format(request, timedelta(hours=-13))
u'-13 hours '
>>> format(request, timedelta(hours=-1, minutes=-1, seconds=-1))
u'-1 hour -1 minute '
>>> format(request, timedelta(minutes=-45, seconds=-1))
u'-45 minutes -1 second'
>>> format(request, timedelta(seconds=-5))
u'-5 seconds'
>>> format(request, timedelta())
u'No time'

CHANGES

0.6.1 (2008-05-20)

  • No code changes, and only a very minor documentation tweak. Re-released to avoid confusion over package versions found in the wild.

0.5.2 (2007-11-03)

  • Improve package data.

0.5.1 (2006-05-24)

  • Package data update.

0.5.0 (2006-05-24)

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zc.i18n-0.6.1.tar.gz (6.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page