© 2006-2016 Alice Bevan-McGregor and contributors.
https://github.com/marrow/web.locale
GILT is an acronym representing the following aspects of your application:
- Globalization ("g11n", sometimes referred to as "regionalization")
- Internationalization ("i18n")
- Localization ("l10n")
- Translation.
The overall goal is that applications are written in such a way that they are translatable into different languages, able to utilize location-aware formatting (numers, dates), are sensitive to individual cultural differences, physical location (time zone), currency formats, etc.
Installing web.locale
is easy, just execute the following in a terminal:
pip install web.locale
Note: We strongly recommend always using a container, virtualization, or sandboxing environment of some kind when developing using Python; installing things system-wide is yucky (for a variety of reasons) nine times out of ten. We prefer light-weight virtualenv, others prefer solutions as robust as Vagrant.
If you add web.locale
to the install_requires
argument of the call to setup()
in your application's
setup.py
file, this package will be automatically installed and made available when your own application or
library is installed. We recommend using "less than" version numbers to ensure there are no unintentional
side-effects when updating. Use web.locale<2.1
to get all bugfixes for the current release, and
web.locale<3.0
to get bugfixes and feature updates while ensuring that large breaking changes are not installed.
This library glues together many support libraries from the community in order to provide a complete and robust GILT
support interface for WebCore (and other web framework) applications. Some of these dependencies are entirely optional
and can be installed by supplying setup.py
(or pip
) with declared "extras". For example, to install a default
set of development-time dependencies and explciitly declare the catalog format you will be using, you might run:
pip install web.locale[development,json]
The available general extras are:
development
-- this installs a recommended set of development-time packages, including pytest and a suite of plugins for it.
Message catalog format extras:
po
-- Install any extra libraries needed for GNUgettext
message catalogs.json
-- Install any extra libraries needed to load JSON-formatted message catalogs.yaml
-- Install any extra libraries needed to load YAML-formatted message catalogs.
Development takes place on GitHub in the
web.locale project. Issue tracking, documentation, and downloads
are provided there. Development chat (both development of WebCore components and chat for users using WebCore to
develop their own solutions) is graciously provided by Freenode in the
#webcore
channel.
Installing the current development version requires Git, a distributed source code management system. If you have Git you can run the following to download and link the development version into your Python runtime:
git clone https://github.com/marrow/web.locale.git pip install -e web.locale
You can then upgrade to the latest version at any time:
(cd web.locale; git pull; pip install -e .)
Extra dependenies can be declared the same as per online installation:
pip install -e web.locale[development]
If you would like to make changes and contribute them back to the project, fork the GitHub project, make your changes, and submit a pull request. This process is beyond the scope of this documentation; for more information see GitHub's documentation.
The WebCore GILT support library (web.locale
) has been released under the MIT Open Source license.
Copyright © 2006-2016 Alice Bevan-McGregor and contributors.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.