Frequently Asked Questions
Here you can find answers to frequently asked questions about Babel.
- Installation & Usage
What is Babel?
Babel is a collection of Python utilities that assist in internationalizing and localizing Python applications, with an emphasis on web-based applications.
What license governs the use of Babel?
What alternatives exist for Python projects?
- zope.i18n has a scope similar to Babel (covering both gettext and the CLDR), but is closely tied to Zope 3.
- PyICU is a Python/SWIG wrapper for the International Components for Unicode library. ICU provides access to locale data based on the CLDR (or the other way around).
Even though these alternatives exist, they are not often encountered in the Python web-app space outside of the Zope and OSAF communities. They both come with additional dependencies.
In addition, TurboGears includes an turbogears.i18n package that provides a rather small fraction of what Babel provides for locale data. The wsgi18n project basically takes the turbogears.i18n package and provides it as a library separate from the TurboGears framework. Also somewhat related are the Translate Toolkit and i18ndude projects.
Anyway, Babel was developed because we saw the need for a comprehensive, framework-independent library that doesn't have dependencies on additional native code.
Installation & Usage
What do I need to use Babel?
- Babel 0.9.x requires Python 2.3 or later (Babel 0.9.5 requires Python 2.4+ by accident, Python 2.3 support was fixed in Babel 0.9.6)
- Babel trunk (1.0.x): Python 2.4 or later
- Setuptools is optional and only used for installation if it's available.
- Python 2.4 users need elementtree to run the import_cldr.py script (see SubversionCheckout).
For solid date formatting and time-zone support, you'll also need pytz. However pytz is completely optional (unless you want to run the unit tests)
To build the docs, you need docutils, genshi, pygments and epydoc. Our source distributions (tar.gz/zip) already contain generated docs.
What plugins are available for Babel?
How can I install or run Babel directly from a checkout?
Some extra steps are needed for this. They are documented on SubversionCheckout.