LinguaPlone

LinguaPlone is a tool to manage and maintain multilingual content that integrates seamlessly with Plone.

Current release
LinguaPlone 3.x

Released Oct 13, 2009 — tested with Plone 3

Releases can now be found at http://pypi.python.org/pypi/Products.LinguaPlone
More about this release…

Download fileGet LinguaPlone for all platforms
Python Package Index Page

Project Description

LinguaPlone

LinguaPlone is the multilingual/translation solution for Plone. It achieves this by being as transparent as possible and by minimizing the impact for existing applications and Plone itself.

It utilizes Archetypes references to do the translation, and all content is left intact both on install and uninstall - thus, it will not disrupt your content structure in any way. It also works with WebDAV.

LinguaPlone doesn't require a particular hierarchy of content, and will work with any layout of your content space.

Some benefits of LinguaPlone

  • Totally transparent, install-and-go.
  • Each translation is a discrete object, and can be workflowed individually.
  • This also means that it works with WebDAV.
  • Translations are kept track of using AT references.
  • You can multilingual-enable your types without affecting their operation outside LinguaPlone.
  • Even if you uninstall LinguaPlone after adding multilingual content, all your content will be intact and will work as separate objects! The only thing that will be inactive is the references between the objects. If you re-install it, they will be back. It's very non-intrusive.
  • Supporting multilingual capabilities is a 4 (!) line addition to your Archetypes class, and does not alter the functionality of the class when used outside LinguaPlone.
  • Fully integrated with ATContentTypes, so the basic content types are translatable.
  • Supports language-independent fields (example: dates, first/last names) for fields you want to be the same across translations, and updated in all languages if one of them changes.
  • Uses the notion of canonical versions, so you can do interesting things with workflow, like invalidate all translations of a document when the master copy has changed.

Credits

LinguaPlone was donated to the Plone Foundation by Plone Solutions, March 2006.

Design and development
Jarn , formerly known as Plone Solutions (Alexander Limi, Dorneles Treméa, Geir Bækholt, Helge Tesdal, Stefan H. Holek, Wichert Akkerman, Hanno Schlichting)
Original design idea
Objectrealms (Benjamin Saller, Kapil Thangavelu)
Funding and deployment, initial version
Oxfam International
Additional funding/sponsorship
Hitotsubashi University in Tokyo, Centre for New European studies (Jonathan Lewis)
Funding Plone 2.0.x compatibility
Zope Japan Corporation (Takeshi Yamamoto)

Also many thanks to

Simon Eisenmann
For doing the hard job of the first implementations (I18NLayer) we had to learn from before doing this.
Learning Lab Denmark
For contributing and sponsoring the experience needed to build a multilingual solution.
Nate Aune
For always pushing for the better solution and making us realise LinguaPlone had to be built.
Jodok Batlogg
For extensive testing, deploying and feedback.
Sasha Vincic
For testing and expanding and making cool new stuff happen with LinguaPlone, XLIFF import/export in particular.

Self-Certification

[X] Internationalized

[X] Unit tests

[ ] End-user documentation

[X] Internal documentation (documentation, interfaces, etc.)

[X] Existed and maintained for at least 6 months

[X] Installs and uninstalls cleanly

[ ] Code structure follows best practice